Open overcastsky opened 6 years ago
既然父组件要把props传递给子组件,那为啥要去改变props的值,可以举个使用场景吗 @overcastsky
举一个很简单的例子,假设有两个组件,一个父组件一个子组件,父组件名字叫Parent是一个
做一下理解更正,componentWillReceiveProps这个生命周期函数并不是只有当组件的props发生改变时才会调用,而是只要父组件的render函数被调用,就会触发子组件的componentWillReceiveProps
PS: this.setState()触发的更新过程不会调用这个生命周期函数,这是因为这个函数会根据新的props值(参数nextProps)来计算出是否要更新内部的state
componentWillReceiveProps这个生命周期函数的意思就是组件接收一个新的props,他的作用是在于,当props发生改变后就会执行这个周期函数,但是注意的是,在组件的内部我们是不可以改变props的值,所以他的使用场景就是有两个组件,父组件和子组件,父组件通过props将数据传递给子组件,当父组件的props的值改变后,引起子组件的值改变,这时候我们就可以在子组件中添加这个周期函数。