反应JSX代码不编译

时间:2015-09-22 13:34:22

标签: javascript reactjs react-jsx

我在浏览器中呈现一个引用react类的HTML页面。 不幸的是,我收到了这个错误:

Uncaught SyntaxError: Unexpected token <

在以下函数的第三行(<div>语句)。

render: function() {
    return (
      <div>
        <h1>Res</h1>
        <resE data={this.state.data} />
      </div>
    );

看来JSX没有正确转换。 但是,我在HTML文件中引用了JSXTransformer:

<script src="https://cdnjs.cloudflare.com/ajax/libs/react/0.13.0/JSXTransformer.js"></script>

此外,我尝试在包含react类的文件顶部添加以下行:

/** @jsx React.DOM */

然而,错误仍然存​​在。

1 个答案:

答案 0 :(得分:3)

你能展示代码所在的脚本吗?

我相信您的问题是您需要确保脚本具有属性

type="text/jsx"

所以要解决你的问题呢?

<script type="text/jsx" src="app/restrictions/Main.js"></script>

您的JSX编译器脚本会查找具有该text / jsx属性的任何脚本,以了解它需要将该JSX代码转换为原始JavaScript。