关于React-Redux修改目标组件的props的逻辑:

  1. connectAdvanced组件中,当前组件会监听store的变化,一旦store发生改变,就会调用组件中的对应的监听方法。

  2. 该方法会把计算过的props保存到this.selector.props的一个临时变量中,然后调用setState强行进行re-render

  3. 然后再在render方法中把this.selector.props作为props传递给目标组件

  4. 至于render的调用,在第2步调用setState的时候,就会把connectAdvanced组件标为dirty,那么就会造成下面所有的节点render(不考虑shouldComponentUpdate的影响)。

图片描述


Clark
3.4k 声望82 粉丝

[链接]