打包时命令行log出NODE_ENV是production,但是在项目代码里打log还是development,啥原因?

环境是支付宝小程序环境,使用gulp编译:
package.json中已设置build时NODE_ENV=production:
image.png
在gulpfile.js中有log:
image.png
运行npm run build时,可以看见命令行打印出production:
image.png
同时在项目代码中也有打log:
image.png
刷新页面看到控制台打印出还是development:
image.png
什么原因?需要怎样设置在代码中才能生效。(代码中没有重新设置环境为development的地方,也没有开启监听!!!)
使用了gulp-env也没用:
image.png

阅读 2.2k
1 个回答
✓ 已被采纳

NODE_ENV 一般是在脚本类逻辑中(即node 运行时下)体现,而在业务代码里没法识别了这个全局变量,为此 webpack 有专门的 DefinePlugin 配置,注入之后,保证你的项目业务代码也能识别这种全局变量。

怎么在gulp中使用,可参考:https://gist.github.com/prplm...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题