问题标签 [zustand]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
48 浏览

reactjs - 在 zustand persist 中间件中设置状态导致无限循环

此代码的灵感来自 Zusand 文档以及 NextJS 和 Zusand 样板。我需要将此数据与浏览器的本地存储同步。但是,在 modifyCart 中调用 'set' 方法会导致无限渲染。我还没有找到足够的文档。我应该如何调试这样的问题?

0 投票
0 回答
27 浏览

reactjs - 使用 Zusand 存储(或任何存储库)设置 React 上下文提供程序的最佳方法,需要使用来自服务器的初始数据进行实例化

我有一些来自服务器的参数,我的 Zusand 存储需要使用这些参数才能正确实例化。

为了得到serverIdand arr,我从连接到应用程序的组件中传递它,以便在首次加载时接收服务器数据。

我想避免对我的其他组件进行道具钻探,所以我的想法是创建一个上下文提供程序来实例化 Zusand 状态,并通过将其包装在 Provider 中并提供我需要的一切来使其可用于所有组件。

我唯一的问题是我很难找出用 React 上下文提供者模式实例化 Zusand 存储的最佳方法,主要是因为我依赖初始服务器道具来运行 useStore。

要创建这样的提供者和上下文,它看起来像这样(例如,在 store.js 文件中):

所以我的问题是,设置它的最佳方法是什么,以便我可以在我上面勾勒的提供程序中拥有serverId和可用?arr也许这是一个完全不同的设计?

任何帮助将非常感激。

0 投票
0 回答
9 浏览

reactjs - 如何使用 react 和 zustand 商店向用户显示错误

我有以下问题。我应该如何向使用 zustand 存储我的数据的用户显示错误?我有一个showError通过我的反应应用程序使用的功能来显示错误。这个想法是我传递一条错误消息并向用户显示敬酒。

ItemsStore.ts

0 投票
0 回答
11 浏览

reactjs - 我应该在组件内部创建函数还是将它们放入状态(Zusand)

希望你一切都好!

这是我的问题。我应该在哪里存储函数?在组件中,还是直接在商店中?

假设我有一个名为 RevisionList 的组件。一个 RevisionList 呈现多个修订(修订组件)。您可以通过单击选择每个修订版。所以每次修订都需要使用名为 setCurRev 的方法。

所以,我在这里有两个选择。在Revision组件中定义它:

或者我可以直接在状态切片中定义它:

然后在 Revision 组件中使用它,如下所示:

您认为哪个是更好的选择?我猜第二个变体可能会导致更少的重新渲染,所以我应该使用它。谢谢!