想象一下一个React应用,您可以在边栏中列出您的朋友。该站点使用Redux来存储好友的状态。如果用户将新朋友添加到他的列表中,我必须将POST发送到后端以保存它。
问题是,我应该如何更新侧边栏中的朋友列表?
发布后,我应该发出GET请求并将响应添加到Redux,还是应该只使用数据并将其直接添加到Redux,删除多余的GET调用?
答案 0 :(得分:0)
IMO这两个选项均有效。但是,我希望在我们的应用程序中有一个真实的来源,这是大多数情况下的后端。
有时,您甚至可能选择同时使用这两个选项。这样可以防止加载状态,从而提高用户体验,但是如果操作失败或后端数据与redux存储不同,则可能会导致“怪异”行为。
答案 1 :(得分:0)
我的建议会同时做。当您请求服务器更新Redux存储时,这将更新您的状态(“好友”列表)并重新呈现组件。 还要触发GET request操作,这样,如果服务器上有数据,而在redux中没有,则应该检索该数据。 (想象:同时使用两台机器并添加朋友)
如果您使用的是与纯组件类似的东西,则如果您的redux存储和检索到的数据相同,即服务器上没有可用的新数据,则状态不会更改,并且组件不会重新呈现。仅当状态有所不同时,它们才会重新渲染,并显示当前列表。