당신은 실제로 세 가지가 일어나고 있습니다 푸 대신 바
렌더링
ReactDOM.Render(
<Foo />,
document.getElementById("root")
);
또한 (렌더링 낮은 경우) ReactDom.Render
의 ReactDOM.render
insetad 다음 작업 버전
를 사용합니다. 먼저 다른 사람들이 말했듯이 렌더 방법에서는 <Foo />
을 사용하고 두 번째로 렌더링은 소문자이어야합니다 (ReactDOM.render
)는 ReactDOM.Render
이 아닙니다.
가 마지막으로 script.js 그들이 방법 당신이 바벨로 파일을로드 할, 내 개발자 콘솔에서 나를 위해 다음과 같은 오류가 발생 : (24)는 파일을로드 할 수 없습니다 :
babel.min.js을 // /C:script.js : Cross origin 요청은 http, data, chrome, chrome-extension, https와 같은 프로토콜 스키마에 대해서만 지원됩니다.
다음 작업을 수행하십시오. 그냥 하나의 파일에 넣어 열고 엽니 다.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<link href="stylesheet.css" type="text/css" rel="stylesheet">
<script src="https://unpkg.com/[email protected]/dist/react.js"></script>
<script src="https://unpkg.com/[email protected]/dist/react-dom.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-standalone/6.21.1/babel.min.js"></script>
</head>
<body>
<div id="root"></div>
<script type="text/babel">
class Foo extends React.Component {
constructor(props) {
super(props);
this.state = {test:"Hello World"};
}
render() {
return(<Bar {...this.state} />);
}
}
class Bar extends React.Component {
render() {
return(<h1>{this.props.test}</h1>);
}
}
ReactDOM.render(
<Foo />,
document.getElementById("root")
);
</script>
</body>
</html>
당신이 바의 부모 노드를 렌더링하지 않았다 때문에 대신 –
Whymarrh
아무것도 – Zone
을 발생하지 루트 구성 요소로'Foo' 렌더링 시도 –