我不确定这是默认行为还是redux还是其他什么,但我发现在分派(dispatch)一个 Action 时,这个 Action 会遍历所有 reducer (没关系),但它也会调用每个 reducer 的连接监听器,从而进一步导致渲染其组成部分。这意味着在每次调度时,应用程序状态树内的所有组件都会被渲染。这是 redux 故意做的还是我做错了什么。 帮我澄清一下这些事情。
最佳答案
在 Redux 中,你的状态是全局的并由 redux 处理,每当你调度一个 action 时,你只是设置全局状态。您的容器组件将接收新状态,并且 reducer 将对它们起作用,但您的组件不会重新渲染,因为之前的状态和下一个状态是相同的。
只有那些其mapStatetoProps导致不同结果的组件才会被渲染
关于reactjs - 即使我们只需要渲染一个组件,所有组件都会被渲染,在react-redux中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38195183/