ステートフルなReactコンポーネントを使用すると、この種の状況によく遭遇します。ReactコンポーネントのコンストラクタとcomponentWillReceivePropsの共通コード
私は小道具で何らかの操作を行う必要があります。私が現在行っている処理は、render()
にするか、小道具の値に従って状態を設定します。
私は小道具が更新されるときに、コンポーネントが最初に取り付けられただけでなく、されたときに、これを行うにしたいと、私はこのような定型的なコードで終わる:
constructor(){
super(props)
const modifiedProps = doSomethingWithProps(props)
...
this.state = {initialState}
}
componentWillReceiveProps(nextProps) {
const modifiedProps = doSomethingWithProps(nextProps)
...
this.setState({newState})
}
doSomethingWithProps(props){
...
}
これを行うにはどのように良い方法はあります?
することは、あなたの代わりに合意 'constructor' – TryingToImprove
の' componentDidMount'を使用することができ、私はすべての私のコードを置く場所 'componentWillMount'は、通常は、このため' constructor'を使用していないだろうこの種のもののために。 –
@TryingToImproveちょうど小道具が更新されたときでも 'componentDid/WillMount'は呼び出されますか? –