Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/22.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
Javascript React redux-嵌套连接的组件_Javascript_Reactjs_Redux_React Redux - Fatal编程技术网

Javascript React redux-嵌套连接的组件

Javascript React redux-嵌套连接的组件,javascript,reactjs,redux,react-redux,Javascript,Reactjs,Redux,React Redux,我创建了一个简单的react redux应用程序,其中包含和组件,两者都连接到redux商店(在CodeSandbox中) 初始呈现时,组件在其组件willmount()生命周期中调度操作(如果操作是从其构造函数调度的,则行为相同) 该操作将redux存储中的状态设置为挂起状态组件已订阅此状态状态,但在初始渲染期间仅渲染一次。我假设组件将渲染至少2次。第一次是因为其父级的初始渲染,第二次是因为redux状态已更改。我是不是遗漏了什么?这两个更新是否通过react/redux进行批处理?您不应该使

我创建了一个简单的react redux应用程序,其中包含
组件,两者都连接到redux商店(在CodeSandbox中)

初始呈现时,
组件在其
组件willmount()
生命周期中调度操作(如果操作是从其
构造函数调度的,则行为相同)


该操作将redux存储中的
状态设置为挂起状态<代码>
组件已订阅此
状态
状态,但在初始渲染期间仅渲染一次。我假设
组件将渲染至少2次。第一次是因为其父级的初始渲染,第二次是因为redux状态已更改。我是不是遗漏了什么?这两个更新是否通过react/redux进行批处理?

您不应该使用它。Redux不是异步的。我相信这个循环是在安装组件之前运行的,因此它只运行一次,因为子组件已经获得了新的值。你是对的。在
componentWillMount
中设置状态,或者在本例中调度redux,不会触发额外的渲染-我想我读文档的速度有点太快了。为了完整起见:使用
componentDidMount
componentWillMount
已被弃用(多年了),并将在react的未来版本中删除。该项目使用react v。16.3. 我知道文档建议不要使用
componentWillMount
组件,但只要此特定项目中的react版本未升级,就可以在
componenWillMount
-