在响应中,当应用程序启动时,它将运行ComponentWill / DidMount,然后对于每个this.setState(),组件将运行componentWill / DidUpdate。
在redux中,商店将订阅这样的渲染函数,
const store = createStore({Reducers})
function run(){
ReactDOM.render(<App />, document.getElementById("element"))
}
store.subscribe(run);
// then for every dispatch() action, store/reducer will run the render all over again
在我看来,对于存储的每个更改,redux都必须重新初始化组件。
答案 0 :(得分:1)
首先,问题的答案:
- 这是否意味着对于每次更改,组件将始终运行componentWill / DidMount(),它将永远不会运行componentWill / DidUpdate?
醇>
根据我的经验,第一次调用componentWill / DidMount,如果DOM结构没有改变且只有你的组件属性,那么yoy将有componentWill / DidUpdate。
- 如果no.1是正确的,它是否会使redux变慢,因为它必须为每次更新初始化组件?
醇>
Redux没有性能问题,因为它使用React最佳实践并仅更新其属性已更改的组件。
我推荐两个很棒的资源来帮助你完成Redux / React之旅: