我需要在构建阶段之前动态注入一些数据。
在我的config/environment.js中,我有:
module.exports = function(environment) {
environment = 'production';
var ENV = {
APP: {
API_HOST: 'https://apihost1.com,
secret: 'key1'
}
};
return ENV;
};
如何动态地将“APP”对象更改为其他对象:
APP: {
API_HOST: 'https://apihost2.com,
secret: 'key2'
}
在根据我package.json中的执行命令进行构建之前?
"scripts": {
"build": "$CONFIG_NAME ember build",
},
我在考虑npm脚本,但无法实现。有人有解决方案吗?
1条答案
按热度按时间abithluo1#
您可以在
config/environment
中执行以下操作:那么如果您希望在构建过程中将
config/config.foo.json
的内容合并到ENV.APP
中,则可以运行env CONFIG_NAME=foo ember build
。env
tho是一个unix的东西,这将工作在Linux和MacOS以及其他unix系统。对于Windows,您可以使用PowerShell设置env变量,或者安装
cross-env
并执行npm run cross-env CONFIG_NAME=foo ember build
。