在我的应用程序中,每当调度事件时,商店都会更新。但问题是我有一个子组件。
商店:
state.name = 'Jack'; //initial state value
子组件:
this.props.updateName('Micheal');
this.printName();
printName() {
console.log(this.props.name); // 'Jack'
}
过了一会儿,我调用了相同的函数。
this.printName(); // 'Micheal'
我的问题是,更新存储时,有什么方法可以在子组件中回调函数?
子组件通过 props 获取新状态。因此,组件WillReceiveProps将完成这个技巧。
componentWillReceiveProps(nextProps) {
if (nextProps.name !== this.props.name) {
console.log(this.props.name, nextProps.name);
}
}