如何创建 Zustand 商店的多个实例?

Fre*_*ira 5 reactjs zustand

我正在组件中制作地图,在该组件中我使用 Zustand 来存储每个组件的状态,问题是所有项目的存储实例都是相同的,如何为每个项目创建一个新实例?

我已经尝试创建一个函数来执行此操作,但它不起作用。

det*_*ama 1

更新:

自版本 4 发布以来,Zustand 对他们的文档进行了一些更新。这是在他们的文档中如何使用切片模式创建多个实例 https://github.com/pmndrs/zustand/blob/main/docs/guides/typescript.md#slices-pattern

旧答案:

您可以通过设置不同的商店名称来创建多个故事。

源代码: https: //codesandbox.io/s/loving-breeze-jshevq

  1. 在此示例中,我创建了两个商店(熊和猫)文件 创建两个存储文件
  2. 首家“熊”和“猫”的 zustand 商店 最初的zustand商店
  3. 执行 在此输入图像描述

结果:
在此输入图像描述

  • 这不是从同一商店创建多个实例,而是复制并粘贴到两个商店中 (4认同)