能否再给一个利用zustand库管理状态的例子
时间: 2024-10-08 10:14:52 浏览: 26
Zustand是一个轻量级的状态管理库,它基于React Hooks设计,适用于React应用中的简单状态管理。下面是一个简单的例子,展示了如何使用Zustand创建、读取和更新组件内的状态:
```jsx
import create from 'zustand';
// 创建store
const useStore = create(set => ({
count: 0,
increment: () => set(state => ({ count: state.count + 1 })),
decrement: () => set(state => ({ count: state.count - 1 })),
}));
function Counter() {
const { count, increment, decrement } = useStore();
return (
<div>
<p>Count: {count}</p>
<button onClick={increment}>Increment</button>
<button onClick={decrement}>Decrement</button>
</div>
);
}
export default Counter;
// 使用时,Counter组件内的state会自动同步到store,并且可以通过actions更新
```
在这个例子中,`useStore`返回一个对象,包含了初始状态`count`以及两个操作函数`increment`和`decrement`。当用户点击“Increment”或“Decrement”按钮时,通过调用这些动作函数,状态会在全局store中更新。
阅读全文