我试图在谷歌中搜索这个,但如果我需要的话,没有正确的答案。
这是一个简单的问题,我有我的余烬-cli-build.js
/*jshint node:true*/
/* global require, module */
var EmberApp = require('ember-cli/lib/broccoli/ember-app');
module.exports = function(defaults) {
var app = new EmberApp(defaults, {
storeConfigInMeta: false,
minifyJS: {
enabled: false
},
minifyCSS: {
enabled: false
}
});
return app.toTree();
};
我想更改 minifyJS 或 minifyCSS 的值,具体取决于我是运行 ember 还是在开发中 - 如何实现?
这个答案适用于 Ember 2.x.x,写于 2.15 起。
在你的ember-cli-build.js
你可以做EmberApp.env()
来获得环境。你也可以做process.env.EMBER_ENV
但第一个选项是在 Ember CLI 文档中,所以我个人会这样做。
例:
var EmberApp = require('ember-cli/lib/broccoli/ember-app');
module.exports = function(defaults) {
var enableMin = (EmberApp.env() === 'production');
var app = new EmberApp(defaults, {
storeConfigInMeta: false,
minifyJS: {
enabled: enableMin
},
minifyCSS: {
enabled: enableMin
}
});
return app.toTree();
};
根据 EmberCLI 文档: 指纹识别和 CDN URL 也app.env
属性应该可用,以下代码也应该没问题:
module.exports = function (defaults) {
const app = new EmberApp(defaults, {});
if (app.env === 'development') {
// do something specific for dev
} else if (app.env === 'production') {
// do something specific for prod
}
};
注意:app.env
在为测试目的而构建时具有"test"
。