old version
when mounted
constructor()
componentWillMount()
render()
componentDidMount()
when updating
componentWillReceiveProps()
shouldComponentUpdate()
componentWillUpdate()
render()
componentDidUpdate()
when uninstalling
componentWillUnmount()
New version (starting from 16.3)
when mounted
constructor()
static getDerivedStateFromProps()
render()
componentDidmount()
when updating
static getDerivedStateFromProps()
shouldComponetUpdate()
render()
getSnapshotBeforeUpdate()
componentDidUpdate()
when uninstalling
componentWilUnmount()