npm 中设置环境NODE_ENV变量,判断失败打印process.env.NODE_ENV确实是"development",但是判断process.env.NODE_ENV === "development" 是false

通过package.json 的scripts脚本 修改NODE_ENV的值来区分开发环境和生产环境。

"scripts": {
    "build": "set NODE_ENV=production && webpack",
    "dev": "set NODE_ENV=development && webpack-dev-server",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
webpack.config.js
复制代码
//webpack.config.js
// 首先引入插件1
const HtmlWebpackPlugin = require('html-webpack-plugin');
const isDev = process.env.NODE_ENV === "development"; 
console.log('process.env.NODE_ENV')
console.log(process.env.NODE_ENV)
console.log((process.env.NODE_ENV == "development" ? 'true1' : 'false1'))
console.log(isDev)
console.log(123)
复制代码

执行 npm run dev

打印结果

process.env.NODE_ENV
development
false1
false
123

那么问题来了   ~~~   打印出的process.env.NODE_ENV 的值已经是

development

但是判断起来依然是false。

解决办法如下

1. 修改package.json

 

"scripts": {
    "build": "set NODE_ENV=production && webpack",
    "dev": "set NODE_ENV=development&& webpack-dev-server",
    "test": "echo \"Error: no test specified\" && exit 1"
  },

 

因为你的NODE_ENV是【production 】,多了一个空格~~
1、set NODE_ENV=production&& webpack

2.

//webpack.config.js
// 首先引入插件1
const HtmlWebpackPlugin = require('html-webpack-plugin');
const isDev = (process.env.NODE_ENV.trim()) === "development"; 

再次打印

process.env.NODE_ENV
development
true1
true
123

 

posted @   糖~豆豆  阅读(8978)  评论(3编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
Live2D
欢迎阅读『npm 中设置环境NODE_ENV变量,判断失败打印process.env.NODE_ENV确实是"development",但是判断process.env.NODE_ENV === "development" 是false』
点击右上角即可分享
微信分享提示