2017-12-21 7 views
0

나는 React를 배우기 시작했다.Babel과 같은 ES6 클래스 및 사전 컴파일 도구없이 React Components를 만드는 방법이 있습니까?

class Greeting extends React.Component { 
    render() { 
    return <h1>Hello, {this.props.name}</h1>; 
    } 
} 

을 지금, 나는 궁금 ES6없이 구성 요소 및 바벨 등 사전 컴파일 도구를 만들 수있는 방법이 있다면 : 문서를 읽고 나면, 일반적인 접근 방식은 ES6 클래스를 사용하는 구성 요소를 만들 것으로 보인다. 반응 문서는 create-react-class라는 라이브러리를 사용하는 것이 제안 :

var createReactClass = require('create-react-class'); 
var Greeting = createReactClass({ 
    render: function() { 
    return <h1>Hello, {this.props.name}</h1>; 
    } 
}); 

을하지만이 또한 노드를 사용하고 마지막에 코드를 컴파일 할 필요합니다.

내가 찾고있는 것은 전혀 의존성이없는 ES5 만 사용하는 방법입니다. 거기 React.createClass` 완벽하게 작동하지만, 그것은 결국 비난입니다.

또 다른 접근법은 단순한 함수를 사용하는 것이지만,이 경우에는 componentDidMount과 같은 후크의 이점이 없습니다.

누구나 해결책이나 제안이 있습니까? 모든 팁을 환영 할 것입니다.

+0

https://medium.com/@to_pe/ 여기

는 CDN의입니다 add-to-a-simple-html-file-a11511c0235f –

답변

1

노드를 사용할 필요없이 브라우저에 CDN's을 포함시키고 createClass를 사용할 수 있습니다.

<script crossorigin src="https://unpkg.com/[email protected]/umd/react.production.min.js"></script> 
<script crossorigin src="https://unpkg.com/[email protected]/umd/react-dom.production.min.js"></script> 

체크 아웃 : : React without ES6

편집 : @Sidney으로 당신은 또한 React without JSX을 필요로 할 것이라고 말했다

+1

또한 [React without JSX] (https://reactjs.org/docs/react-without- jsx.html) – Sidney

+0

@Dakota님께 감사드립니다. 클래스'가 사용 중지 되었습니까? 지금도 사용하고 있어도 괜찮습니까? –

+0

모든 요구 사항을 충족 시키려면 React의 최신 버전을 사용할 수 없습니다. 아마도 오래된 것을 사용해야 할 것입니다. 이 제한이 많은 경우, 전혀 반응을 사용하지 않는 것에 대해 생각할 수 있습니다. – Dakota

관련 문제