在html中引用jsx文件时,React渲染方法不起作用

时间:2016-09-29 11:15:57

标签: javascript reactjs jsx

我正在尝试从我的html引用jsx文件,但渲染函数没有显示任何内容,并且控制台中没有任何错误。

*注意 - 我改变了下面的fb CDN链接,因为SO不允许它们。 CDN链接不是问题。

我的代码如下所示:

HTML

<html>
  <head>
    <script src="https://f*b.me/react-0.14.6.js"></script>
    <script src="https://f*b.me/react-dom-0.14.6.js"></script>
    <script src="http://f*b.me/JSXTransformer-0.12.1.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
  </head>

  <body>
    <div class="container">
      <div id="loggedin"></div>
    </div>
    <script type="text/babel" src="js/script.jsx"></script>
  </body>
</html>

JSX

var App = React.createClass({
    render: function() {
        return(
            <h1>Hello</h1>
        )
    }
});

ReactDOM.render(<App />, document.getElementById('loggedin'));

1 个答案:

答案 0 :(得分:2)

React使用babel将您的jsx转换为js。因此,添加babel而不是JSXTransformer并将文件另存为.js而不是.jsx

将此添加到您的脚本

<script src="https://unpkg.com/babel-core@5.8.38/browser.min.js"></script>

Reference