Ember CLI文档介绍了如何管理AMD依赖项here。基本上,您可以像在Brocfile中的任何其他依赖项一样导入它们,然后将它们作为第二个参数导出。借用文档的例子:
app.import('bower_components/ic-ajax/dist/named-amd/main.js', {
exports: {
'ic-ajax': [
'default',
'defineFixture',
'lookupFixture',
'raw',
'request',
]
}
});
我在使用自己的代码处理这样的事情时遇到了很多困难。虽然我没有出现构建错误,但当我尝试导入我的一个自定义AMD资产时,它总是以未定义的形式返回。我对AMD没什么用处,所以也许我的错误来自于该代码的错误实现。它看起来像这样:
define('annotators',
["exports"],
function(__exports__) {
function1 = function(var1){
this.var1 = var1
}
__exports__.function1 = function1;
function2 = function(var1){
this.var1 = var1
}
__exports__.function2 = function2;
}
)
在我的应用程序中,我尝试使用以下内容导入它:
import function1 from 'annotators';
在我的Brocfile中,我导入/导出它像:
app.import('vendor/annotators/main.js', {
exports: {
'annotators': [
'function1',
'function2'
]
}
});
这里可能会发生什么?