" React without Node / npm" - 获取错误 - "未捕获的ReferenceError:导出未定义"

时间:2017-01-01 05:08:52

标签: javascript reactjs

我在reactjs中建立了一个项目。需要注意的重要一点是,我没有使用node或npm来设置项目。这意味着,我下载后直接使用所有脚本库文件并将其添加到我的项目中。但是,我得到的错误是"导出未定义"。

enter image description here

还有一点需要注意,我不能在我的项目中使用import关键字。

的index.html

<!DOCTYPE html>
<html>
    <head>
        <title>Learn Reactjs</title>
        <script src="react.min.js"></script>
        <script src="react-dom.min.js"></script>
        <script src="browser.min.js"></script>
    </head>
    <body>
        <div id="root"></div>
        <script type="text/babel" src="DropDown.js"></script>
        <script type="text/babel" src="index.js"></script>
    </body>
</html>

index.js

'use strict';

var DropDown = require('DropDown');

var HelloMessage = React.createClass({
  render: function () {
    return (
        <div>
            <h1>Hello {this.props.message}!</h1>
            <DropDown />
        </div>
    );
  }
});

ReactDOM.render(<HelloMessage message="World" />, document.getElementById('root'));

DropDown.js

'use strict';

    var DropDown = React.createClass({
      render: function () {
        return (
          <div>
            <h1>i am DropDown</h1>
          </div>
        );
      }
    });

    export default DropDown;

1 个答案:

答案 0 :(得分:0)

我找到了解决问题的方法。

第1步:保持 index.html 与上述相同。

第2步:根据以下代码替换 index.js 文件:

'use strict';


window.DropDown = React.createClass({
  render: function () {
    return (
      <div>
        <h1>i am DropDown</h1>
      </div>
    );
  }
});

第3步:使用以下代码替换 DropDown.js 文件:

Service