Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs Redux服务器呈现=>;不响应状态更改_Reactjs_Redux - Fatal编程技术网

Reactjs Redux服务器呈现=>;不响应状态更改

Reactjs Redux服务器呈现=>;不响应状态更改,reactjs,redux,Reactjs,Redux,初始渲染后,状态不会更新UI,直到我导航回根目录(刷新发生的位置) 这是有问题的,因为当我对根目录中的状态进行异步调用/更改时,我希望导航窗口反映更新的状态更改 我认为这是因为初始状态加载/服务器呈现发生在根目录下,并且没有进行适当的更新 我曾研究过使用store.subscribe(render),但根据Redux文档: //您可以使用subscribe()更新UI以响应状态 更改,如React Redux而不是subscribe() //通常,您会使用视图绑定库(例如React 我也尝试过使

初始渲染后,状态不会更新UI,直到我导航回根目录(刷新发生的位置)

这是有问题的,因为当我对根目录中的状态进行异步调用/更改时,我希望导航窗口反映更新的状态更改

我认为这是因为初始状态加载/服务器呈现发生在根目录下,并且没有进行适当的更新

我曾研究过使用store.subscribe(render),但根据Redux文档:

//您可以使用subscribe()更新UI以响应状态 更改,如React Redux而不是subscribe()

//通常,您会使用视图绑定库(例如React

我也尝试过使用componentWillMount,但这对我来说没有多大意义(也不起作用)

TLDR:

根组件中的状态更改不会向下传播到子组件(尽管它们反映在根组件级别)

我只能在不涉及任何异步操作的情况下获得渲染(即,我在内存中保留异步数据结构的副本,进行变异,然后减少它)

解决方案

  • 这可能是因为在初始异步获取之后,我不会在异步调用之后再次调用“fetch”。在进行异步调用之后,我初始化了另一个获取

  • 我将“客户端”状态保存在内存中,并同时写入数据库。我不喜欢这样,因为它似乎很容易受到状态树和数据库之间不一致的影响

  • 在本地存储中保留状态,在“会话”关闭时将全部更改写入数据库

  • ?


  • 你能和我们分享应该正确呈现数据的组件吗?我想我知道你的问题是什么,但我想确定我已经解决了。我只是在发布后没有再次获取数据-我不明白,你需要再次获取?在客户端?是的。对数据库进行了更改,但我从未执行过这些操作向减速机发送数据(它们只是作为邮件发送到DB)