Tôi có tập tin commentBox.jsx, với đoạn mã sau:Phản ứng lớp không được xác định (văn bản/babel)
var CommentBox = React.createClass({
render: function() {
return (
<div className="commentBox">
<h1>Comments</h1>
</div>
);
}
});
Trong index.html, tôi muốn làm cho thành phần này:
<div id="content"></div>
<script type="text/babel" src="scripts/commentBox.jsx"></script>
<script type="text/babel">
ReactDOM.render(<CommentBox />, document.getElementById('content'));
</script>
Nhưng tôi nhận được lỗi: "CommentBox không được xác định"; Tại sao điều này không hoạt động? Nếu tôi sẽ đặt tất cả mã trong một tệp (commentBox.js) - nó sẽ hoạt động.
Điều này làm việc cho tôi. Hãy chắc chắn sử dụng '
CommentBox không được khai báo. Nếu bạn muốn theo cách đó, thì mã của bạn sẽ như sau:
Nguồn
2015-12-09 11:31:07 vistajess
Bạn có thể nói gì về đối tượng ReactDom trong mã này? Nó không được tuyên bố? –
ReactDom là thư viện được sử dụng để đưa thành phần vào DOM và phải được nhập vào mã nhưng thành phần chính nó như CommentBox cũng không được xác định. – vistajess
Câu trả lời sai)) CommentBox tôi đã thêm trước cuộc gọi của ReactDOM.render. Nó phải tồn tại trong phạm vi toàn cục của đối tượng cửa sổ –