Я пытаюсь подключиться к моему приложению. Это приложение для рельсов, использующее рельсы-реакцию (хотя я не думаю, что это часть проблемы). Я в настоящее время использую очень простую установку 1 компонент:Ошибка с базовым примером React: Uncaught TypeError: undefined не является функцией
// react_admin.js.jsx
/** @jsx React.DOM */
var CommentBox = React.createClass({
render: function() {
return (
<div className="commentBox">
Hello, world! I am a CommentBox.
</div>
);
}
});
React.render(
<CommentBox />,
document.getElementById('content')
);
Мой HTML-файл содержит:
<body>
<div id="content"></div>
<script src="/assets/react.js?body=1"></script>
<script src="/assets/react_admin.js?body=1"></script>
</body>
я могу видеть, что рельсы реагирующие преобразовывает мой react_admin.js.jsx в react_admin.js следующим образом:
/** @jsx React.DOM */
var CommentBox = React.createClass({displayName: 'CommentBox',
render: function() {
return (
React.DOM.div({className: "commentBox"},
"Hello, world! I am a CommentBox."
)
);
}
});
React.render(
CommentBox(null),
document.getElementById('content')
);
Однако хром приподняв «» неперехваченного TypeError: не определен не является функция «» в Render.react() вызов, который она показывает между «(» и «CommentBox (нуль)»
Может ли кто-нибудь сказать мне, что я делаю неправильно?
убедитесь у вас есть последние версия реакции, которая должна быть v0.12.0. Если у вас есть более старые версии, вы должны использовать теперь амортизированный 'React.renderComponent' как @jsanchez, предложенный ниже в ответах – trekforever