我正在尝试使用以下命令在script.jsx文件中plnkr上请求React模块:
var AptList = require('./AptList');
提供"要求未定义"错误。
我想知道如何在plnkr上要求模块?
答案 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。