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
  • 相关阅读:
    sparql学习sparql示例、dbpedia在线验证
    中国绿卡
    逾期率的水有多深,你知道吗?
    ICO和区块链区别
    What are the benefits to using anonymous functions instead of named functions for callbacks and parameters in JavaScript event code?
    Link static data in sql source control
    sql data compare
    viewbag
    多态的实际使用
    win10 sedlauncher.exe占用cpu处理
  • 原文地址:https://www.cnblogs.com/sugartang/p/12402191.html
Copyright © 2011-2022 走看看