在hello world应用程序上反应错误"Uncaught TypeError:type.toUpperCase不是函数"

j4v*_*4v1 2 javascript reactjs

我已经开始涉足reactjs了,并且在遵循教程时我得到了标题上的错误,只是运行一个非常简单的hello world应用程序.以下是我的单页代码:

   <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title>Document</title>
        <script src="https://fb.me/react-0.13.3.js"></script>
        <script src="https://fb.me/JSXTransformer-0.13.3.js"></script>
    </head>
    <body>
      <script type="text/jsx">
        // Define a class
        var HelloWorld = React.createClass({
          render: function() {
            return <div>
              Hello World!
            </div>
          }
        });

        // create element with this class
        var element = React.createElement({HelloWorld});

        // Render this class and  place it in the body tag
        React.render(element, document.body);
      </script>
    </body>

    </html>
Run Code Online (Sandbox Code Playgroud)

任何提示或决议都非常感谢.

Ada*_*dam 6

在我的情况下,我创建了一个React元素,但我忘了将它导出到文件的末尾:

var React = require('react');

var About = React.createClass({
    render: function(){
        return (
            <div>
                <h1>The about page</h1>
            </div>
        );
    }
});
export {
    About, About as default
};
Run Code Online (Sandbox Code Playgroud)


Eug*_*neZ 5

以下行有一个错误:

var element = React.createElement({HelloWorld});
Run Code Online (Sandbox Code Playgroud)

它应该是:

var element = React.createElement(HelloWorld);
Run Code Online (Sandbox Code Playgroud)

注意缺少花括号.