SolidJS の Signal と Svelte の Store に触発された軽量な状態管理ライブラリ
npm などでgastore
をインストールしてください。
import { createStore } from 'gastore'
const str = createStore<string>('hoge')
str.subscribe((value) => {
console.log(value) // ->テスト
})
name.set('テスト')
Store を作成します。引数には保存する値の初期値を指定します。返り値のStore
を変数や定数に代入してください。
createStore<T>(value: T): Store<T>
Store に値を保存します。引数には保存する値を指定します。
set(value: T): T
Store に値を保存します。引数には関数を指定し、指定する関数の引数から Store に保存した値を受け取ることが出来ます。
update(updateFunc: (prev: T) => T): T
Store.set()
やStore.update()
で保存された値が更新された際に実行する関数を設定します。引数には関数を指定し、指定する関数の引数から Store に保存した値を受け取ることが出来ます。
subscribe(execFunc: (value: T) => void, options?: SubscribeOptions): void
保存された値を返します。
get(): T
git clone https://github.com/souhait0614/gastore.git
cd gastore
pnpm i