// 在渲染前调用,在客户端也在服务端。
componentWillMount(){
console.log("WillMount"+this.state.mode)
}
// 在第一次渲染后调用,只在客户端。之后组件已经生成了对应的DOM结构,可以通过this.getDOMNode()来进行访问。
componentDidMount(){
console.log("DidMount"+this.state.mode)
}
// 在组件接收到一个新的 prop (更新后)时被调用。这个方法在初始化render时不会被调用。
componentWillReceiveProps(){
console.log("ReceiveProp"+this.state.mode)
}
// 返回一个布尔值。在组件接收到新的props或者state时被调用。在初始化时或者使用forceUpdate时不被调用。
// 可以在你确认不需要更新组件时使用。
shouldComponentUpdate(){
console.log("sholudupdate"+this.state.mode)
return true
}
// 在组件接收到新的props或者state但还没有render时被调用。在初始化时不会被调用
componentWillUpdate(){
console.log("WillUpdate"+this.state.mode)
}
// 在组件完成更新后立即调用。在初始化时不会被调用。
ComponentDidupdate(){
console.log("didupdate"+this.state.mode)
}
// 在组件从 DOM 中移除之前立刻被调用。
componentWillUnmount(){
console.log("WillUnmount"+this.state.mode)
}
进入js页面后会显示:
WillMountdatetime
DidMountdatetime
在state状态改变后,会打印
sholudupdatedatetime
WillUpdatedatetime
但是ComponentDidupdate这个方法并未调用,奇怪。希望有懂的可以留言。谢谢
网友评论