deno.land / x / nano_jsx@v0.1.0 / hooks / useState.ts
12345678910111213141516171819202122232425import { _state } from '../state.ts'
export const useState = <T>(state: T, id: string): readonly [T, (state: T) => void] => { const s = { setState(state: T) { if (state !== null) _state.set(id, state) }, get state(): T { return _state.get(id) } }
if (!_state.has(id)) _state.set(id, state)
return [s.state, s.setState]}
export const getState = (id: string) => { return _state.get(id)}
export const setState = (id: string, state: any) => { return _state.set(id, state)}
Version Info