ReactJs浏览器无法读取属性'键'未定义的

时间:2016-07-05 02:56:57

标签: javascript reactjs

HTML code:

<div id="content"></div>

<script src="build/react.min.js"></script>
<script src="build/react-dom.min.js"></script>
<script src="https://cdn.bootcss.com/babel-core/6.1.19/browser.min.js"></script>
<script src="ex1.jsx" type="text/babel"></script>

JSX代码:

// create class
var HelloWord = React.createClass({
    render: function () {
        return (
            <div>
                <p>Hello Word!</p>
            </div>
        );
    }
});

// show content
ReactDOM.render(
    <HelloWord></HelloWord>, document.getElementById('content')
);

运行后的控制台消息:

  

未捕获的TypeError:无法读取属性&#39;键&#39;未定义的

为什么?

1 个答案:

答案 0 :(得分:11)

我也遇到了同样的问题,在上网时我发现我使用的babel-core版本存在问题。我用另一个替换了它并让我的代码工作。

试试这个

<强> HTML

<div id="content"></div>

<script src="build/react.min.js"></script>
<script src="build/react-dom.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-core/5.8.34/browser.min.js"></script>
<script src="ex1.jsx" type="text/babel"></script>

<强> JSX

var HelloWord = React.createClass({
    render: function () {
        return (
            <div>
                <p>Hello Word!</p>
            </div>
        );
    }
});

// show content
ReactDOM.render(
    <HelloWord></HelloWord>, document.getElementById('content')
);

它也适合你。

<强>更新

由于babel-standalonebabel-browser,您可以使用deprecated包进行babel编译,使用较新的版本。

<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-standalone/6.25.0/babel.min.js"></script>