我有一个角度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
所以我进入了需求页面"常见错误"并尝试遵循他们的一些建议,然后在两个非拖拉相关的脚本
之间得到此错误Mismatched anonymous define() module: blah blah
但是当在项目中没有添加require.js时,这些在AOT中可以正常工作。
有没有办法修改这些require语句以使其在AOT中工作?为什么我在JIT编译中没有收到此错误?相当困在这里。
答案 0 :(得分:0)
我明白了。我不得不将node_modules / dragula / **添加到rollup-config插件部分的commonjs include部分(还必须添加atoa / ,ticky / ,contra / **,因为dragula使用它们我认为。)