zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    FastApi
    ceph 分布式存储安装
    Linux的inode的理解
    Linux面试题汇总答案
    五,openstack之nova服务的安装(计算节点)
    四,openstack之nova服务的安装(控制节点)
    三,openstack之glance服务的安装
    二,openstack之keystone的简介与安装
    一,openstack基础服务部署
    Kubernetes学习之路(24)之Prometheus监控
  • 原文地址:https://www.cnblogs.com/sugartang/p/12402191.html
Copyright © 2011-2022 走看看