[英]ember-cli-build.js | set broccoli's params depending on environmnet
我試圖在谷歌搜索此,但沒有正確的答案,如果我需要這樣做。
這是一個簡單的問題,我有我的ember-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();
};
我想根據是在生產環境還是在開發環境中運行ember來更改minifyJS或minifyCSS的值-如何實現?
此答案適用於Ember 2.xx,撰寫於2.15。
在ember-cli-build.js
您可以執行EmberApp.env()
來獲取環境。 您也可以執行process.env.EMBER_ENV
但第一個選項位於Ember CLI Docs中 ,所以我個人考慮一下。
例:
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 docs: 指紋和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"
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.