EmberJS 管理依赖
Ember 使用 NPM 和 Bower 来管理依赖项,这些依赖项在 package.json 中定义为 NPM,
bower.json 中定义为 Bower。例如,在开发 Ember 应用程序时,您可能需要为您的样式表安装 SASS,而 Ember 并未安装该样式表。为此,请使用
Ember Addons 来共享可重用库。如果要安装任何 CSS 框架或 JavaScript datepicker 依赖项,请使用 Bower 包管理器。
Addons
Ember CLI 可用于通过使用以下命令安装 Ember 插件-
ember install ember-cli-sass
ember install 命令会将所有依赖项保存到相应的配置文件中。
Bower
它是一个 Web 包管理器,用于管理 HTML、CSS、JavaScript 或图像文件的组件。它基本上维护和监视所有包并检查新的更新。它使用配置文件
bower.json来跟踪放置在 Ember CLI 项目根目录下的应用程序。
您可以使用以下命令安装项目依赖项-
bower install <dependencies>--save
Assets
您可以将第三方 JavaScript 放在项目的
vendor/ 文件夹中,这些文件夹不能作为 Addon 或 Bower 包提供,并放置自己的资产,例如 robots.txt、favicon 等. 在项目的
public/ 文件夹中。开发 Ember 应用程序时 Ember 未安装的依赖项,应使用清单文件
ember-cli-build.js 包含。
AMD JavaScript modules
您可以将资产路径作为第一个参数,将模块列表和导出作为第二个参数。您可以将这些资产包含在
ember-cli-build.js 清单文件中作为-
app.import('bower_components/ic-ajax/dist/named-amd/main.js', {
exports: {
'ic-ajax': [
'default',
'defineFixture',
'lookupFixture',
'raw',
'request'
]
}
});
Environment Specific Assets
通过将对象定义为第一个参数(环境名称),可以在不同的环境中使用不同的资产,并且对象的值应该在该环境中用作资产。在
ember-cli-build.js 清单文件中,您可以包含为-
app.import ({
development: 'bower_components/ember/ember.js',
production: 'bower_components/ember/ember.prod.js'
});
Other Assets
一旦所有资源都被放置在
public/ 文件夹中,它们将被复制到 dist/目录中。例如,如果您复制放置在
public/images/favicon.ico 文件夹中的图标,它将被复制到
dist/images/favicon.ico 目录中。第三方资产可以手动添加到
vendor/ 文件夹中,也可以通过
import() 选项使用 Bower 包管理器添加。未使用
import() 选项添加的资产将不会出现在最终构建中。
例如,考虑以下将资产导入
dist/ 文件夹的代码行。
app.import('bower_components/font-awesome/fonts/fontawesome-webfont.ttf');
以上代码行在
dist/font-awesome/fonts/fontawesomewebfont.ttf 中创建了一个字体文件。您也可以将上述文件放在不同的路径中,如下所示-
app.import('bower_components/font-awesome/fonts/fontawesome-webfont.ttf', {
destDir: 'assets'
});
它将复制
dist/assets/fontawesome-webfont.ttf中的字体文件。