You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node.js中NODE_ENV打印正确但对比结果为false问题求助

输入图片描述
输入图片描述

NODE_ENV显示为development但比较结果为false的排查方案
  • 检查字符串前后的隐藏字符:大概率是设置环境变量时不小心加了空格(比如NODE_ENV= development,等号后多了空格),打印时肉眼看不到,但实际字符串带空格。可以用console.log('[' + process.env.NODE_ENV + ']')输出,看是否有多余的空格或不可见字符。如果有,设置环境变量时要确保等号前后无空格,比如NODE_ENV=development。

  • 排查环境变量是否被覆盖:检查代码中有没有地方重新赋值process.env.NODE_ENV,比如某些框架、构建工具(如Webpack、Vite)的配置文件里可能会重新设置这个变量,导致和你手动设置的不一致。

  • 验证大小写一致性:虽然你打印显示是development,但可以用console.log(process.env.NODE_ENV.toLowerCase() === 'development')测试,排除大小写差异的可能(比如实际是Development)。

  • 确认环境变量传递方式正确:不同系统设置环境变量的方式不同:

    • Linux/macOS:启动命令要写成NODE_ENV=development node app.js
    • Windows(cmd):set NODE_ENV=development && node app.js
    • Windows(PowerShell):$env:NODE_ENV="development"; node app.js
      如果用了dotenv等环境变量管理工具,要确保.env文件里的NODE_ENV设置正确,且加载顺序没问题。

内容的提问来源于stack exchange,提问作者Dan Samborschi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 21:10:38