본문 바로가기

Frontend/React

[React #8] PropTypes 종류

 

 

 

 

 

PropTypes와 함께 하는 타입 검사 – React

A JavaScript library for building user interfaces

ko.reactjs.org

자바스크립트의 유연한 특성으로 작성이 편한 대신 파일이 많아지면 생산성이 떨어져 타입스크립트를 많이 사용하는데,

자바스크립트를 이용해 앱을 개발해야하는 경우 이러한 문제점을 피하기 위해 PropTypes를 활용하는 것을 권장.

 

PropTypes는 부모로 부터 전달 받은 prop의 데어터  type을 검사한다.

 

 

타입 검사 방법
모든 타입 PropTypes.any
Number 객체 PropTypes.number
String 객체 PropTypes.string
Boolean 객체 PropTypes.bool
Function 객체 PropTypes.func
Array 객체 PropTypes.array
Object 객체 PropTypes.object
Symbol 객체 PropTypes.symbol
Node 객체 PropTypes.node
React 요소 PropTypes.element
여러 타입 중 하나 PropTypes.oneOfType([PropType.number, PropType.string])
특정 클래스의 인스턴스 PropTypes.instanceOf(Date)
전달 속성 제한 PropTypes.oneOf(['name', 'career'])
특정 타입 집합으로 제한 PropTypes.arrayOf(PropTypes.string)
특정 타입을 속성 값으로 하는 객체 제한 PropTypes.objectOf(PropTypes.number)
특정 형태를 갖는 객체 제한 PropTypes.shape({ prop1, prop2 })

 

isRequired 설정은 필수로 전달 받은 속성을 말한다.

 

 

설정 설명
PropTypes.string.isRequired 문자 형 (필수)
PropTypes.number.isRequired 숫자 형 (필수)
PropTypes.func.isRequired 함수 형 (필수)
PropTypes.bool.isRequired 불리언 형 (필수)