ember-cli-build.js |根据环境设置西兰花的参数
ember-cli-build.js | set broccoli's params depending on environmnet
我尝试在 google 中进行搜索,但如果我需要的话,没有找到正确的答案。
这是一个简单的问题,我有 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.x.x 并于 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 文档:Fingerprinting and CDN URLs 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"
。
我尝试在 google 中进行搜索,但如果我需要的话,没有找到正确的答案。
这是一个简单的问题,我有 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.x.x 并于 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 文档:Fingerprinting and CDN URLs 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"
。