gpt4 book ai didi

javascript - 在 React/Redux 中创建新项目并稍后保存到服务器

转载 作者:行者123 更新时间:2023-12-01 02:29:12 35 4
gpt4 key购买 nike

我正在使用 React/Redux 构建一个 Web 应用程序,但我在想出一个应该很简单的解决方案时遇到了问题:创建一个新的(嵌套)记录并稍后将其保存到服务器。

我正在使用 normalizr 创建一个平面状态树。基本上我的(相关)状态结构如下所示:

projects: {
as1234hhafs: {
_id: as1234hhafs
pages: [kljafsldasdf, asdfas8990],
...
}
},
pages: {
kljafsldasdf: {
_id: kljafsldasdf,
name: 'New page',
...
},
asdfas8990: {
_id: asdfas8990,
name: 'New page 2',
...
}
}

每个项目都有一组子文档。我想要做的是创建一个新页面(子文档)并编辑其数据(和子文档),然后单击将其保存到服务器。但我不知道如何使用推荐的 redux/normalizr 状态结构来实现这一点。

如果商店还没有 ID,如何向商店添加新记录?一旦服务器的响应将 ID 分配给记录,我将如何管理它?

我希望我的问题足够清楚。

最佳答案

两种可能的方法:

  1. 将未保存的条目存储在状态的单独部分,例如在不需要 id 的数组中。一旦它们被保存并且您知道了 id,请将它们移至持久对象集。合并两组对象以便在 UI 上显示它们不应该太复杂。

  2. 在前端生成 id 根据您想要进行的权衡,这可能是一个递增的数字,一个随机的 UUID ,或者完全不同的东西。保存记录后,您可以将此临时 ID 替换为永久 ID。

请注意,这并不是一个详尽的列表,还有许多其他可能的方法。只是帮助您入门的东西。

关于javascript - 在 React/Redux 中创建新项目并稍后保存到服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48448020/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com