
公式のReact.jsライブラリドキュメントのAdvanced Guidesセクションの一連の翻訳の継続。
PropTypes-Reactでの型チェック
アプリケーションが大きくなると、多数のタイプチェックエラーが発生する可能性があります。 一部のアプリケーションでは、 FlowやTypeScriptなどのJavaScript拡張機能を使用して、アプリケーション全体を型チェックできます。 ただし、使用しない場合、Reactは組み込みの型チェック機能を提供します。
コンポーネントのコンポーネントタイプチェック(props)を実行するには、コンポーネントクラスの特別なプロパティpropTypes定義できます。
class Greeting extends React.Component { render() { return ( <h1>Hello, {this.props.name}</h1> ); } } Greeting.propTypes = { name: React.PropTypes.string };
React.PropTypesモジュールは、受信したデータの検証に使用できるバリデーターのセットをエクスポートします。 この例では、 React.PropTypes.stringバリデーターを使用します。 無効な値がプロパティに渡されると、JavaScriptコンソールに警告が表示されます。 パフォーマンスのために、 propTypesは開発モードでのみチェックされます。
React.PropTypes
この例では、サポートされているさまざまなバリデーターが実装されています。
MyComponent.propTypes = {
単一の子制約
React.PropTypes.elementを使用してReact.PropTypes.element 1つの子のみをコンポーネントに渡すことができるという制限を課すことができます。
class MyComponent extends React.Component { render() {
デフォルトのプロパティ値
コンポーネントクラスの特別なプロパティdefaultProps定義することprops 、 propsデフォルト値を定義できます。
class Greeting extends React.Component { render() { return ( <h1>Hello, {this.props.name}</h1> ); } }
この例では、JSXコンポーネントで定義されていない場合、 defaultProps値を使用してthis.props.nameを設定します。 propTypes型検証はpropTypesから値を設定した後に実行されるため、 defaultPropsから値を設定する場合にも型チェックが適用されます。
次の部分:
前の部分:
ソース: React-上級ガイド-PropTypesによる型チェック