onvno / pokerface

日常技术文章阅读整理
3 stars 0 forks source link

20190328 - React生命周期 #11

Open onvno opened 5 years ago

onvno commented 5 years ago

React 中 getDerivedStateFromProps 的用法和反模式

Class ColorPicker extends React.Component {
    state = {
        color: '#000000',
        prevPropColor: ''
    }
    static getDerivedStateFromProps (props, state) {
        if (props.color !== state.prevPropColor) {
            return {
                color: props.color
                prevPropColor: props.color
            }
        }
        return null
    }
    ... // 选择颜色方法
    render () {
        .... // 显示颜色和选择颜色操作
    }
}

react-lifecycle-visualizer react 生命周期可视化仓库