Valtio에서 초절 간단 React 상태 관리



상태 객체를 감싸다


import { proxy, useProxy } from 'valtio'

const state = proxy({ count: 0, text: 'hello' })

어디서나 변경 가능


setInterval(() => {
  ++state.count
}, 1000)

useProxy로 React로


function Counter() {
  const snapshot = useProxy(state)
  // 読み込む場合はsnapshot、いじる場合はstate
  // snapshotの読み込み部分が変化したら再描画される
  return (
    <div>
      {snapshot.count}
      <button onClick={() => ++state.count}>+1</button>
    </div>
  )
}

좋은 웹페이지 즐겨찾기