我想设置环境变量以在运行时配置URL。
我使用webpack捆绑了js,这是定义为在编译时使NODE_ENV
可用的插件。
new webpack.DefinePlugin({
'process.env':{
'NODE_ENV': JSON.stringify(process.env.NODE_ENV),
//'TARGET_ENV': JSON.stringify(process.env.TARGET_ENV)
}
})
在这里yarn
我要根据目标环境执行:
"test-kubernetes": "cross-env NODE_ENV=kubernetes-cluster webpack && yarn run testenv",
"build": "cross-env NODE_ENV=production webpack --mode=production",
"dev": "cross-env NODE_ENV=development webpack --mode=development && webpack-dev-server --hot",
但是process.env.NODE_ENV
在运行时未定义。
这个问题似乎与cross-env有关,因为在Windows计算机上使用SET NODE_ENV=kubernetes-cluster
而不是cross-env NODE_ENV=kubernetes-cluster
可以使事情正常进行。
有什么主意吗?
答案 0 :(得分:0)
从5.2.0版开始,Windows环境开始回归。我设法使工作切换回5.1.6。 参考问题:https://github.com/kentcdodds/cross-env/issues/185