반응: 정적 propType이 필요한 이유
나는 redex tomvc 코드를 찾고 있다.이 뭐죠?static
키워드static propTypes
?
static
는 이전 세대의 Javascript("ES5")의 일부가 아니기 때문에 이전 문서에서는 찾을 수 없습니다.그러나 이제 Internet Explorer(http://caniuse.com/#search=es6)를 제외한 모든 주요 브라우저에서 ES6 클래스 구문이 지원되며, Babel과 같은 트랜스필러를 사용하면 모든 브라우저에서 사용할 수 있습니다.대부분의 React 사용자는 이미 Babel을 사용하여 JSX를 변환하고 있기 때문에 React 사이트(Redux TodoMVC 등)는 이를 당연하게 여긴다.에 대한 자세한 내용을 참조해 주세요.static
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/static 를 참조해 주세요.
의 경우static propTypes
propType은 클래스의 인스턴스가 아닌 클래스 자체에 선언해야 합니다.즉, 스테이트리스 컴포넌트를 사용하는 경우:
function Foo() {
this.PropTypes = somePropTypes; // bad
return <div></div>;
}
Foo.PropTypes = somePropTypes; // good
ES6 클래스를 사용하는 경우,Foo.PropTypes = somePropTypes
다음과 같습니다.
class Foo extends React.Component {
static PropTypes = somePropTypes;
}
참고로 이러한 클래스의 속성을 정의하는 기능은 브라우저에 존재하지 않습니다(아직).transform-class-properties
플러그 인.
propTypes
는 컴포넌트의 인스턴스에서 고유하지 않습니다.또한 컴포넌트별로 변경되지 않습니다.따라서 클래스의 스태틱멤버가 되는 것은 의미가 있습니다
언급URL : https://stackoverflow.com/questions/40514574/react-why-static-proptypes
'IT' 카테고리의 다른 글
헤더에서 Wordpress 주석 피드 링크 제거 (0) | 2023.02.22 |
---|---|
RestTemplate와 비교하여 가장을 사용할 경우의 장점과 단점은 무엇입니까? (0) | 2023.02.22 |
오류: 유형에 콜 시그니처가 없는 식을 호출할 수 없습니다. (0) | 2023.02.22 |
Spring Boot 서비스 (0) | 2023.02.22 |
tsconfig의 "target" 및 "module"에 대해 (0) | 2023.02.22 |