0
我正在渲染基於從父組件傳入的道具顯示的自定義模態組件。道具isVisible
最初是false
,然後通過按鈕在父組件中更新。我在渲染函數中通過console.log
語句檢查組件狀態。當組件初次初始化時,它按預期記錄,但isVisible更新後,它將返回false true
。爲什麼國家不更新道具?當傳遞新道具時反應子組件狀態不更新
class MyModal extends React.Component {
constructor(props) {
super(props);
this.state = {
createModalVisible:props.isVisible,
};
setCreateModalVisible = (visible) => {
this.setState({createModalVisible:visible});
}
componentWillMount(){
this.setCreateModalVisible(this.props.isVisible);
}
}
render() {
console.log(this.state.createModalVisible,this.props.isVisible);
return (//modal stuff)
}
}
export default MyModal
我拿到這可能是非常基本的組件生命週期的東西,但我無法從文檔弄清楚並是相當新的反應。
正是我在找的 - 謝謝。 –