development

React PropTypes : 하나의 prop에 다른 타입의 PropType을 허용

big-blog 2020. 5. 14. 20:39
반응형

React PropTypes : 하나의 prop에 다른 타입의 PropType을 허용


크기에 맞는 소품을받는 구성 요소가 있습니다. prop은 문자열 또는 숫자 ex : "LARGE"또는 17입니다.

propTypes 유효성 검사에서 React.PropTypes가이 중 하나 일 수 있음을 알 수 있습니까?

유형을 지정하지 않으면 경고가 표시됩니다. prop type `size` is invalid; it must be a function, usually from React.PropTypes.

MyComponent.propTypes = {
    size: React.PropTypes
}

size: PropTypes.oneOfType([
  PropTypes.string,
  PropTypes.number
]),

자세히 알아보기 : PropType을 사용한 유형 검사


문서화를 위해 유효한 문자열 값을 나열하는 것이 좋습니다.

size: PropTypes.oneOfType([
    PropTypes.number,
    PropTypes.oneOf([ 'SMALL', 'LARGE' ]),
]),

이것은 당신을 위해 일할 수 있습니다 :

height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),

import React from 'react';              <--as normal
import PropTypes from 'prop-types';     <--add this as a second line

    App.propTypes = {
        monkey: PropTypes.string,           <--omit "React."
        cat: PropTypes.number.isRequired    <--omit "React."
    };

    Wrong:  React.PropTypes.string
    Right:  PropTypes.string

참고 URL : https://stackoverflow.com/questions/41808428/react-proptypes-allow-different-types-of-proptypes-for-one-prop

반응형