Zustand 中的 Map 与 Set
Map 和 Set 是可变的数据结构。要在 Zustand 中使用它们,你必须在更新时创建一个新实例。
Map
读取 Map
更新 Map
务必创建一个新的 Map 实例:
Set
读取 Set
更新 Set
务必创建一个新的 Set 实例:
为什么要使用新实例?
Zustand 通过比较引用来检测变化。直接修改 Map 或 Set 不会改变它的引用:
陷阱:空集合的类型提示
在初始化空的 Map 和 Set 时,请提供类型提示:
如果不提供类型提示,TypeScript 会推断为 never[],导致之后无法添加元素。