programing

React.js - 기본 프로펠이 null과 함께 사용되지 않습니다.

mailnote 2023. 3. 22. 21:49
반응형

React.js - 기본 프로펠이 null과 함께 사용되지 않습니다.

React 컴포넌트에 기본 소품이 있습니다.

PropertyTitleLabel.defaultProps = {
    bedrooms: 1,
    propertyType: 'flat'
};
PropertyTitleLabel.propTypes = {
    bedrooms: PropTypes.number,
    propertyType: PropTypes.string
};

하지만 내가 지나갈 때null로.bedrooms예를 들어 다음과 같습니다.

const bedrooms = null; // in real world API returns `null`
<Component bedrooms={bedrooms} />

디폴트 소품으로는 대체되지 않았습니다. (아이디어는?)

를 변경할 수 있습니다.null에 가치를 두다.undefined기본값을 사용합니다.

<Component bedrooms={bedrooms || undefined} />

제 생각에는 이 두 가지 차이점이 있는 것 같아요.null그리고.undefined처리시에 행해집니다.defaultProps.그null값은 의도된 동작일 수 있으므로 기본값으로 대체되지 않습니다.undefined교체되지 않으며 앞으로도 교체될 예정입니다.

문서에 기재된 바와 같이

[...] 상위 구성 요소에 의해 지정되지 않은 경우 이 .timeout.value에 값이 지정되도록 하는 데 사용됩니다.

여기 관련된 문제가 있습니다.

  • undefined=아무것도 없습니다.
  • null="아무것도"를 암시하는 것.

undefined현실에는 존재하지 않는다. null하지만 존재합니다.즉,undefined존재하지 않는 것은 통과할 수 없기 때문에 소품 값은 통과할 수 없습니다.부터null아무것도 아닌 게 아니라 아무것도 암시하지 않는 것, 소품에서 통한다.

언급URL : https://stackoverflow.com/questions/34809178/react-js-default-prop-is-not-used-with-null-is-passed

반응형