设置NODE_ENV在Mac和Windows之间不同

mwecs4sa  于 11个月前  发布在  Node.js
关注(0)|答案(3)|浏览(127)

我与一个团队的4和我是唯一的Mac用户和我的同龄人都使用Windows机.我的团队成员(Windows用户)使用以下这是不工作在我的Mac机:

"start": "set \"NODE_ENV=prod\" && node index.js"

字符串
当我尝试在log中打印process.env.NODE_ENV时,它返回undefined
然后在浏览后,我在Mac上使用了以下内容,它运行得很好:

"start: "export NODE_ENV=prod && node index.js"


现在,如果我在repository中提交我的代码,它们将受到影响

是否有任何通用的解决方案可以用来摆脱这个平台问题?

先谢了。

utugiqy6

utugiqy61#

您可以使用cross-env package以跨平台的方式设置环境变量。
安装它:

npm install --save-dev cross-env

字符串
使用它:

"start": "cross-env NODE_ENV=prod node index.js"

d7v8vwbk

d7v8vwbk2#

另一种解决方案是将所有环境变量保存在代码运行的相应节点环境中。对于本地开发,您可以添加一个.env文件,并使用dotenv这样的包来填充环境变量。

aor9mmx1

aor9mmx13#

一个解决方案可以创建一个"start-mac" :"export NODE_ENV=prod && node index.js"脚本只为mac机器.在package.json你可以添加自定义脚本为windows和mac如果它不更新旧的脚本.

相关问题