npm构建目录的常用知识
文章目录
参考地址: npm–脚本命令参考
1.process.env.NODE_ENV详解
1.1介绍
在node中,有全局变量process表示的是当前的node进程。 process.env包含着关于系统环境的信息,但是process.env中并不存在NODE_ENV这个东西。
NODE_ENV是一个用户自定义的变量,在webpack中它的用途是判断生产环境或开发环境。
1.2process.env.NODE_ENV该如何配置?
process.env属性返回的是一个包含用户环境信息的对象,它可以区分开发环境或正式环境的依据,那么我们如何配置它呢?
1.3配置环境变量
1.3.1第一种方法发
#node中常用的到的环境变量是NODE_ENV,首先查看是否存在
set NODE_ENV
#如果不存在则添加环境变量
set NODE_ENV=production
#环境变量追加值 set 变量名=%变量名%;变量内容
set path=%path%;C:\web;C:\Tools
#某些时候需要删除环境变量
set NODE_ENV=
1.3.2方法2:使用DefinePlugin
DefinePlugin官网的解释是:DefinePlugin允许我们创建全局变量,可以在编译时进行设置。
因此可以使用该属性来设置全局变量来区分开发环境和正式环境,这就是DefinePlugin的基本功能。
我们可以在webpack.config.js中添加如下代码配置全局变量信息,因为当webpack进行编译的时候会全局设置变量,如下代码:
module.exports = {
plugins: [
// 设置环境变量信息
new webpack.DefinePlugin({
PRODUCTION: JSON.stringify(true),
VERSION: JSON.stringify('5fa3b9'),
BROWSER_SUPPORTS_HTML5: true,
TWO: '1+1',
'typeof window': JSON.stringify('object'),
'process.env': {
NODE_ENV: JSON.stringify(process.env.NODE_ENV)
}
})
]
}
pa