React JS 无法读取未定义的属性“keys”
2016-04-14
2921
我开始通过教程学习 React,但是在运行我创建的代码时遇到了这个错误。
这个错误似乎与语言框架有关。也许与我为翻译导入的 Babel 版本有关。
有人知道实际情况以及如何找到解决方案吗?
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.0.1/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.0.1/react-dom.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/6.1.19/browser.js"></script>
<title>ReactJs</title>
</head>
<body>
<script type="text/babel">
var HelloWorld = ReactDOM.createClass({
render: function() {
return <div>
<h1>Hello World</h1>
<p>This is some text></p>
</div>
}
});
ReactDOM.render(<HelloWorld/>, document.body);
</script>
</body>
</html>
3个回答
我不确定您是否已经找到结果,但我遇到了同样的错误,并发现这是 cdn 版本不匹配的问题。
如果您使用这些 cdn:
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.13.3/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.29/browser.js"></script>
并将您的
ReactDOM.render(<HelloWorld/>, document.body);
更改为
React.render(<HelloWorld/>, document.body);
它现在就可以工作了。
ThinkTankShark
2016-06-11
React.render 自 React 0.14(2015 年 10 月 7 日发布)起已被弃用:
https://facebook.github.io/react/blog/2015/10/07/react-v0.14.html
我强烈推荐 Facebook 提供的出色的 Create React App NPM 模块,它无需任何配置即可创建 React 应用程序,但仍使用最新的 ES6 和 Babel 功能。此外,它还具有开箱即用的热重载功能,并具有构建选项,用于创建可用于生产的最小化、捆绑的 .js 文件。
Jannik
2016-12-08