私は自分のコンポーネントに関するいくつかの更新に苦労しています。私はは州の中に小道具を設定してはならないと知っています。しかし、コンポーネントのアップデートを正しく行うためにこれを行う必要がありました。Reactネイティブの新しい小道具を受け取る、componentWillReceiveProps
componentWillReceiveProps(nextProps) {
this.setState({
doctor: nextProps.data.name,
address: nextProps.data.address
})
}
これを行うより良い方法はありますか?
shouldComponentUpdate: function(nextProps, nextState) {
return nextProps.id !== this.props.id;
}
が、私はme.c
コンポーネント内の小道具を変更しないでください。その状態はどういう意味ですか... – dandavis
なぜあなたの小道具を状態にする必要がありますか?あなたは突然変異していますか? React reは、そのコンポーネントで使用されている小道具が変更されたときに、そのコンポーネントをレンダリングします。 – Idiot211
@ Idiot211、このアプリにはお気に入りのアイテムが保存されているListViewがあります。アイテムを開こうとすると別のコンポーネント(e。g details-item)、私がListViewに戻ったときに私はそこにまだ行き詰まっていたアイテムを消してしまいました。 componentWillReceivePropsを使用して状態を新しい小道具で更新すると、それは機能します。私はそれが理にかなってほしいと思う。 –