Plunker。如何要求反应模块?

时间:2017-09-18 14:56:36

标签: reactjs plunker

我正在尝试使用以下命令在script.jsx文件中plnkr上请求React模块:

var AptList = require('./AptList');

提供"要求未定义"错误。

我想知道如何在plnkr上要求模块?

1 个答案:

答案 0 :(得分:1)

您没有使用任何捆绑包,所有内容都在浏览器中,因此您必须首先在index.html中为该AptList组件添加脚本

<script src="AptList.js"></script>
<script src="script.jsx"></script>

那将包含该组件的定义。你不需要(也不能)在那里使用require。

AptList.js中,您不需要module.exports = AptList;,因为它已经使用上面的脚本标记导入。此外,您应该删除script.jsx中的require。

现在,另一个大问题是您使用的是 JSX ,浏览器本身不支持。为此,您将需要Babel,因此在index.html中添加以下脚本:

<script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/react/15.6.1/react.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/react/15.6.1/react-dom.js"></script>

然后,您必须在身体末尾之前的底部的每个脚本标记中添加以下类型

<script type="text/babel" src="..."></script>

这将允许您使用ES6语法和JSX。

Here is the link to the plunk with everything working.