要素タイプを構成可能にするコンポーネントを作成しています。コンポーネントまたは要素の正しいPropTypeは何ですか
const Col = ({ containerElement, children }) => {
return (
<containerElement>
{children}
</containerElement>
);
};
Col.defaultProps = {
containerElement: 'div'
};
コンテナ要素は、上記のdefaultPropsのようにすることも、コンポーネントにすることもできます。
Col.propTypes = {
className: PropTypes.string,
containerElement: PropTypes.oneOf([
PropTypes.string,
PropTypes.element
]),
をしかし、それは正しく検証しない:
<Col containerElement={<MyComponent} />
私が検証するpropTypes
を得ることができない、私はこれを試してみました。
警告:失敗しましたpropType:
Col
に供給された値div
の無効な小道具componentClass
、
正確にコンポーネントに渡していますか?値が本当に要素の場合は、とにかく ''として使用することはできません。 ''は 'React.createElement( 'containerElement'、...)'の構文的な砂糖です。文字列であっても、 'containerElement'は* variable * 'containerElement'ではなく' React.createElement'に渡されます。検証エラーについて心配する前に、コード自体が正しい結果(つまり正常に動作する)を生成することを確認します。 –