我正在尝试实现不带捆绑步骤(无需编译)的本地es6代码。
这纯粹是我的本地版本,不会在生产中使用。
我的代码具有AMD模块加载(import lodash from 'lodash';
),而且我还依赖于ReactJS软件包,该软件包还包括JSX。我相信我应该使用babel加载程序(也支持JSX的加载程序)。
对我来说,很重要的一点是,我可以使用自定义软件包从CDN导入。
此刻我很困惑,因为systemJS和JSPM都已经升级到了最新版本,并且文档中没有指定太多内容。
这是我需要知道的:
新的SystemJS / JSPM还能处理吗?看来它们现在是互斥的,我们应该使用其中一个。
我已经看到JSPM有相当数量的软件包,但是在最新文档中没有指定包含它们甚至将自定义url映射到导入。该文档使用cli来创建构建,但是据我了解,systemJS / JSPM的目的是排除捆绑步骤。
将我引向正确的方向将受到高度赞赏,只需要获得在systemJS / JSPM上运行的现代React代码库即可。
我还尝试了systemJS github页面上的文档。
<script src="system.js"></script>
<script type="systemjs-importmap">
{
"imports": {
"lodash": "https://unpkg.com/lodash@4.17.10/lodash.js"
}
}
</script>
<!-- Alternatively:
<script type="systemjs-importmap" src="path/to/map.json">
-->
<script>
System.import('/js/main.js');
</script>
在我的main.js
文件中:
import _ from 'lodash';
console.log(_);
我还包括了systemJS的transform和babel-transform附加功能,但仍然无法使导入正常工作。
我收到错误[BABEL] Note: The code generator has deoptimised the styling of undefined as it exceeds the max of 500KB.
,控制台日志为undefined
即使可行,我仍然需要JSPM来实现JSX babel转换器。
如果能与导入JSPM包一起使用,那就太好了。
谢谢