// 1 - Parent - Wrong
render() {
const { record } = this.state;
if (!record) { return null; }
return (
<div>
<p>Now this is visible</p>
<Children id={record.id};
</div>
);
}
// 2 - Parent - Right
render() {
const { record } = this.state;
const recordId = record ? record.id : null;
return (
<div>
<p>Now this is visible</p>
<Children id={recordId};
</div>
);
}
// Children
componentWillReceiveProps(nextProps) {
console.log(nextProps.id);
}
よう際に親コンポーネントの開始を更新されていません。this.state = {記録:{ID: 'デモ'}}子供の状態になる場合は、コンポーネントの小道具がヌル
コードを書く
親レコードが新しい状態を受け取ったために可視になったとしても、子コンポーネントのWReReivePropsでは、最初のアプローチであるnextPropsは常に未定義です。
2番目は適切に動作しますが、
なぜ最初の動作が間違っていますか?
これを修正することはできますか?質問が何であるかはっきりしない – Valentin
はい私はここに新しいです、私が最初のものを使うとき、子どもたちが小道具を受け取らない理由は疑問でした。 – vrotos