3
私はまだ完全に反応していません。私は、次の内容でのindex.htmlファイルで作成してみました:未知のリファレンスエラー - オブジェクト/クラスが定義されていません
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>React Tutorial</title>
<!-- Not present in the tutorial. Just for basic styling. -->
<link rel="stylesheet" href="css/base.css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.14.7/react.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.14.7/react-dom.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.6.15/browser.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/marked/0.3.5/marked.min.js"></script>
</head>
<body id="html-body">
<div id="content"></div>
<script type="text/babel" src="scripts/box.js"></script>
<script type="text/babel">
ReactDOM.render(
<Box />,
document.getElementById('content')
);
</script>
</body>
</html>
そしてscripts/box.js
に、私は次のコードを持っている:
var Box = React.createClass({
render: function() {
return (
<h2>Purple Monkey</h2>
);
}
});
を、私は私のブラウザでindex.htmlをを表示すると、私はエラーを取得しますUncaught ReferenceError: Box is not defined
。しかし、ボックスクラスを定義した直後に、ReactDOM.render
行をindex.html内のscripts/box.js
に移動すると、すべてが機能します。
ReactDOM.render
をscripts/box.js
以外で実行できないのはなぜですか?反応コンポーネントを他のjavascriptファイルでも使用できるようにするには、どうすれば適切にインクルード/必要なのですか?
@John