zoukankan      html  css  js  c++  java
  • 2020年2月 webpack的mode与process.env.NODE_ENV与dotenv

    process.env

    process.env是运行node脚本时的环境对象,此环境中的变量可以在process.env中取到,但只能在node脚本中取。

    对于被webpack打包的项目js文件,必须在webpack.config中通过definePlugin将process.env的变量中转一下,然后项目js文件中就能取到definePlugin中定义的变量。

    webpack4提供了一种Mode模式, --mode production  参数会自动将definePlugin中加入process.env.NODE_ENV设置为"production",也就是省去了自己去操作这一步。除此之外,不同的mode还定制了一些其他的配置项。这与node的环境变量是两个东西,只设置Mode并不能获取node脚本中的process.env。

    所以在webpack4的项目中,可以无需definePlugin就直接在项目中使用process.env.NODE_ENV,而其他版本不行。

    dotenv

    dotenv是一个能够读文件获取环境变量的库,文件形式有.env,.env.local,优先级也有区别。

    create-react-app搭建的项目自带这个包,本身可以在node脚本中直接获取到,配合dotenv-webpack插件可以在项目中使用,导入的变量可以在项目文件中获取。

    dotenv的用处在于可以自定义环境变量,不局限于mode提供的NODE_ENV,也不用definePlugin了。

  • 相关阅读:
    JSP实现页面自动跳转
    marquee属性的使用说明
    jsp 按钮 超链接 直接跳转至另一页面
    生成验证码图片代码
    js 通过判断月数填充日数下拉框
    邮箱正则验证
    jsp 验证用正则表达式
    onselectstart 与 -moz-user-select
    onselectstart 、onselect区别
    NSOperation基本操作
  • 原文地址:https://www.cnblogs.com/natsu07/p/12294940.html
Copyright © 2011-2022 走看看