2016-04-14 61 views
2

我开始通过教程学习React,但是当我运行我创建的代码时遇到了此错误。React JS无法读取未定义的属性'keys'

该错误似乎是与语言框架有关的错误。也许是我为翻译导入的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> 

回答

1

我不确定你是否已经找到了结果,但我得到了同样的错误,发现它是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); 

将现在的工作。

0

React.render已经废弃了,因为阵营0.14(发布2015年10月7日):

https://facebook.github.io/react/blog/2015/10/07/react-v0.14.html

我强烈建议真棒创建阵营从Facebook应用NPM模块,创建应用程序做出反应用没有配置,但仍然使用最新的ES6和Babel功能。此外,它还附带了开箱即用的热重新加载功能,并且有一个构建选项,用于创建一个准备生产的缩小的捆绑.js文件。

https://github.com/facebookincubator/create-react-app

相关问题