我正在尝试通过ember-cli在我的Ember应用程序中加载gridstack。我通过bower
安装了该应用程序,并将其导入我的ember-cli-build.js
文件中。它包括_
作为库:
if (typeof define === 'function' && define.amd) {
define(['jquery', 'lodash'], factory);
}
define.amd
评估为false
我调查了为什么会这样,并发现ember-cli的加载器不支持UMD
。在一个开放的cli issue上,主要cli开发人员之一Stefan Penner建议:
这是设计的。由于此库需要预构建步骤 对模块进行去匿名化。那一步可以做适当的改编 工作正常
我不知道这意味着什么。我通过在这个库之前手动导入我自己的ember-cli-build
中的这个库的依赖关系解决了这个问题,但这违背了依赖管理的目的。如何让这个库解析自己的模块?
答案 0 :(得分:0)
目前的ember-cli版本不仅通过app.import('path/to/entry-point.js')
支持Standard Named AMD Asset,还支持Standard Anonymous AMD Asset:
app.import('path/to/entry-point.js', {
using: [
{ transformation: 'amd', as: 'your-named-import' }
]
});
正常情况下,这会进入您的ember-cli-build.js
。
Sidenode:CommonJS模块可以通过ember-browserify加载。