CNode

process.env.NODE_ENV在哪儿设置

问答
MMyNodeJs__legacy_5588c0ab01d3ce0d73d69098发布于10 年前最后回复9 年前8 回复98750 浏览0 收藏

看到别的地方判断process.env.NODE_ENV =development 这个process.env是什么?在哪儿设置的? 在window系统下是在命令行通过 SET NODE_ENV =development 可是用node的命令窗口输入process.env.NODE_ENV 是undefined 是什么原因?

查看回复

回复 (8)

J
JeffWong16#1·9 年前

虽然问题已经过了很久了,但还是想帮助还需要帮助的人---https://segmentfault.com/a/1190000005811347

K
kenticny#2·10 年前

process.env 是读取系统环境变量的,比如你在启动服务的时候,设置环境变量为production或者development,那么在程序里面就可以通过process.env.ENVNAME获取,因为你在node命令窗口启动时没有设置相关的环境变量,所以就没办法获取到了,你可以试一下NODE_ENV=development node来启动命令窗口,然后应该就可以获取到了!

J
JiaxiangZheng#3·10 年前

windows 不太清楚,*NIX 系统下规则如下: export NODE_ENV=production && node xxx.js 这样在当前命令行下后续的命令中读取 NODE_ENV,都会得到 production 值; 如果直接使用 NODE_ENV=production node xxx.js,则 NODE_ENV 的有效性仅限当前命令,不会对后续命令有影响。

引用 JiaxiangZhengwindows 不太清楚, NIX 系统下规则如下: export NODE ENV=production && node xxx.js 这样在当前命令行下后续的命令中读取 NODE ENV,...

@JiaxiangZheng 什么是当前命令,后续命令? 如果想取到,命令行窗口不能切换吧,只能在当前命令行窗口访问吧?

E
eyblog#5·10 年前

在代码里就可以设置啊

引用 eyblog在代码里就可以设置啊

@eyblog 用控制台设置方便些

K
kelvv#7·10 年前

"dev-mac": " export NODE_ENV=development&& nodemon --harmony --use_strict index.js -w ", "dev-win": " set NODE_ENV=development&& nodemon --harmony --use_strict index.js -w ",

Z
zhishaofei3#8·9 年前

支持

参与回复
登录后即可参与回复。登录