3月7日 12:26
如何创建和使用 Zustand store?
创建 Zustand store 的步骤:
- 安装 Zustand:
bashnpm install zustand # 或 yarn add zustand
- 创建 store 文件(例如
store.js):
javascriptimport { create } from 'zustand'; const useStore = create((set) => ({ // 状态 count: 0, user: null, // 操作状态的方法 increment: () => set((state) => ({ count: state.count + 1 })), decrement: () => set((state) => ({ count: state.count - 1 })), setUser: (user) => set({ user }), reset: () => set({ count: 0, user: null }) })); export default useStore;
- 在组件中使用 store:
javascriptimport React from 'react'; import useStore from './store'; function Counter() { // 方法 1:获取整个 store const { count, increment, decrement } = useStore(); // 方法 2:选择性订阅(推荐,性能更好) const countValue = useStore((state) => state.count); const incrementCount = useStore((state) => state.increment); return ( <div> <h1>Count: {count}</h1> <button onClick={increment}>Increment</button> <button onClick={decrement}>Decrement</button> </div> ); } export default Counter;
关键点:
- 使用
create函数创建 store - store 是一个函数,接收
set和get两个参数 set用于更新状态,支持函数式更新- 使用
useStorehook 在组件中访问状态 - 推荐使用选择性订阅来优化性能