我正在使用 jspm 0.16.2。
我正在用这个测试项目 https://github.com/caasjj/jspm-tut
当我将转换器设置为无时:transpiler: "none"
我收到一个错误XHR error (404 Not Found) loading http://localhost:53404/none.js
如果我将转换器设置为“测试”,它会给出相同的错误,除了它寻找test.js
这是 jspm 的错误吗?
我不想使用转译器,而是使用 system.js 来加载 AMD 模块。
当我从 config.js 中删除转换器选项时,它会尝试加载 Traceur。
我不想在运行时运行转译器。
目前尚不清楚你想做什么。如果您使用 ES2015 功能(例如 ES2015 模块,let
等),那么你需要转译器。如果您编写的代码没有 ES2015 功能,则不会加载任何转译器。您可以通过将 ES5 代码放入来检查这一点main.js
并检查调试器的网络选项卡。browser.js
将不会被下载。
您输入的字符串transpiler
in System.config
从字面上看就是转译器文件本身。如果是"babel"
,它被映射到npm:[email protected] /cdn-cgi/l/email-protection
(from map
字段),当与path
字段指的是jspm_packages/npm/[email protected] /cdn-cgi/l/email-protection
然后在该目录中,该文件.jspm.json
将入口点指向browser.js
,这是客户端转译器文件本身。
无论你设置什么字符串transpiler
至,jspm将设置System
指向它(路径只是baseURL
如果您还没有映射它)并获取它。当然,它不适用于任何任意字符串,例如none
or test
。如果您没有指定任何内容,则默认值是traceur
.
您可以选择通过执行以下操作来转换服务器端jspm bundle
如果客户端传输是您想要避免的。
对于仅使用 ES5 和 AMD 且无需转译的代码,请查看no-transpile
上述仓库的分支。注意browser.js
即使没有下载transpile
仍设置为"babel"
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)