In react context doc、contextTypeが割り当てられていない場合の子アクセス時、コンテキストは空です。親と子がコンテキストを使うためにpropTypeを割り当てる必要があるようです。なぜコンテキストを使用するときに反応するコンテキストタイプを指定する必要がありますか?
小道具もpropTypeを持っていますが、必要ではありませんが、なぜコンテキストに必要なのでしょうか?より安全にコンテキストを使用するように設計されていますか?
In react context doc、contextTypeが割り当てられていない場合の子アクセス時、コンテキストは空です。親と子がコンテキストを使うためにpropTypeを割り当てる必要があるようです。なぜコンテキストを使用するときに反応するコンテキストタイプを指定する必要がありますか?
小道具もpropTypeを持っていますが、必要ではありませんが、なぜコンテキストに必要なのでしょうか?より安全にコンテキストを使用するように設計されていますか?
はい。あなたの質問に対する答えは、すでにあなたが参照したページにあります。
アプリケーションを安定させたい場合は、コンテキストを使用しないでください。それは 実験的APIであり、 Reactの今後のリリースで破損する可能性があります。
リアクションは、あなたが何をしているのか分からない限り、あなたがコンテキストを使用しないことを望みません。このため、コンテキストを使用する必要があるときには、contextTypes
を明示的に定義する必要があります。
対照的に、propTypes
は、開発者が必要なすべての小道具を正しく通過したことを確認するReactが付属しているタイプチェックツールです。あなたが小道具を正しく渡さなかった場合は何も警告しません。また、propTypes
型チェックは開発者モードでのみ動作し、本番ビルドでは削除されます。 React v15.5よりpropTypes
は廃止され、separate packageに移動されました。