Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 带Ember CLI的UMD_Javascript_Ember.js_Ember Cli - Fatal编程技术网

Javascript 带Ember CLI的UMD

Javascript 带Ember CLI的UMD,javascript,ember.js,ember-cli,Javascript,Ember.js,Ember Cli,我正试图通过Ember cli在我的Ember应用程序中加载。我通过bower安装了该应用程序,并将其导入我的ember cli build.js文件中。它通过以下方式将\uu作为一个库包括在内: if (typeof define === 'function' && define.amd) { define(['jquery', 'lodash'], factory); } define.amdevaluation tofalse 我研究了这种情况的原因,发现embe

我正试图通过Ember cli在我的Ember应用程序中加载。我通过
bower
安装了该应用程序,并将其导入我的
ember cli build.js
文件中。它通过以下方式将
\uu
作为一个库包括在内:

if (typeof define === 'function' && define.amd) {
    define(['jquery', 'lodash'], factory);
}
define.amd
evaluation to
false

我研究了这种情况的原因,发现ember cli的加载程序不支持
UMD
。在开放式cli上,主要cli开发人员之一Stefan Penner建议:

这是故意的。因为此库需要一个预构建步骤来 取消模块的匿名性。这一步可以做适当的咀嚼 正确工作


我不知道那是什么意思。我通过在我自己的
ember cli build
中手动导入此库的依赖项来绕过这个问题,但这违背了依赖项管理的目的。如何使此库解析其自己的模块?

新Ember项目的最新Ember CLI蓝图包含
ember自动导入
是一个库,允许在ember中导入任何NPM库。不需要配置。它也可以安装在使用较旧的Ember CLI版本的项目中,这是推荐的方法

如果您不想安装其他依赖项(即使它是官方蓝图的一部分),则Ember CLI不仅支持通过
app.import('path/to/entry point.js')
,还支持:

正常情况下,这会进入您的
ember cli build.js

Sidenode:有一段时间是CommonJS模块的推荐解决方案。但它已被弃用,取而代之的是
ember自动导入

app.import('path/to/entry-point.js', {
  using: [
    { transformation: 'amd', as: 'your-named-import' }
  ]
});