produce
编辑此页面produce
是一个受 Immer 启发的 API,用于 Solid 的 Store 对象,允许进行局部修改。
import { produce } from "solid-js/store"import type { NotWrappable, Store } from "solid-js/store"
function produce<T>( fn: (state: T) => void): ( state: T extends NotWrappable ? T : Store<T>) => T extends NotWrappable ? T : Store<T>;
与 createStore
一起使用的示例:
import { produce } from "solid-js/store";
const [state, setState] = createStore({ user: { name: "John", age: 30, }, list: ["book", "pen"],});
setState( produce((state) => { state.user.name = "Jane"; state.list.push("pencil"); }));