我有一个 Angular 2 应用程序,并且正在使用 ng2-dragula 库。一切都在开发(JIT 编译)模式下工作。当我使用 AOT 编译时,aot 构建和汇总成功,但随后在浏览器中出现此错误:
Uncaught ReferenceError: require is not defined
at dragula.js:3
at main-aot.js:6
此错误来自 dragula.js 文件顶部的这些行。
var emitter = require('contra/emitter');
var crossvent = require('crossvent');
var classes = require('./classes');
我尝试将 requirejs 添加到我的项目中,然后出现此错误:
Uncaught Error: Module name "contra/emitter" has not been loaded yet for context: _. Use require([])
http://requirejs.org/docs/errors.html#notloaded
所以我去了要求页面“常见错误”并尝试遵循他们的一些建议,然后在两个非 dragula 相关脚本之间出现此错误
Mismatched anonymous define() module: blah blah
但是当 require.js 没有添加到项目中时,这些在 AOT 中可以正常工作。
有没有办法修改这些要求语句以使其在 AOT 中工作?为什么我在 JIT 编译中没有收到此错误?很卡在这里。