Javascript 在React/Redux中创建新项目并稍后保存到服务器
我正在使用React/Redux构建一个web应用程序,我遇到了一个问题,我想找到一个简单的解决方案:创建一个新的(嵌套的)记录,然后保存到服务器上 我正在使用normalizer创建一个平面状态树。基本上,我的(相关)状态结构如下所示:Javascript 在React/Redux中创建新项目并稍后保存到服务器,javascript,reactjs,redux,normalizr,Javascript,Reactjs,Redux,Normalizr,我正在使用React/Redux构建一个web应用程序,我遇到了一个问题,我想找到一个简单的解决方案:创建一个新的(嵌套的)记录,然后保存到服务器上 我正在使用normalizer创建一个平面状态树。基本上,我的(相关)状态结构如下所示: projects: { as1234hhafs: { _id: as1234hhafs pages: [kljafsldasdf, asdfas8990], ... } }, pages: { kljafsldasdf: {
projects: {
as1234hhafs: {
_id: as1234hhafs
pages: [kljafsldasdf, asdfas8990],
...
}
},
pages: {
kljafsldasdf: {
_id: kljafsldasdf,
name: 'New page',
...
},
asdfas8990: {
_id: asdfas8990,
name: 'New page 2',
...
}
}
每个项目都有一系列子文档。我想做的是创建一个新页面(子文档)并编辑它的数据(和子文档),然后单击将其保存到服务器。但我不知道如何使用推荐的redux/normalizer状态结构实现这一点
如果商店还没有ID,我如何向其添加新记录?一旦服务器的响应向记录分配了名称和ID,我将如何管理它
我希望我的问题足够清楚。两种可能的方法:
请注意,这不是一个详尽的列表,还有许多其他可能的方法。只是一些让你开始的东西。两种可能的方法:
或者,您可以将未保存的页面存储在状态树的另一个位置,但是这会使页面组件的信息源更加复杂。非常感谢!关于方法2:在得到响应后,如何将前端生成的ID映射到服务器分配的ID?一种常见的方法是将临时ID传递到后端并返回到前端,以将前端的草稿与后端的永久记录相匹配。非常感谢!关于方法2:在收到响应后,如何将前端生成的ID映射到服务器分配的ID?一种常见的方法是将临时ID传递到后端并返回到前端,以将前端的草稿与后端的永久记录相匹配。