node process.env

官方process文档

官方解释:process 对象是一个全局变量,它提供有关当前 Node.js 进程的信息并对其进行控制。 作为一个全局变量,它始终可供 Node.js 应用程序使用,无需使用 require()。

一、process.env

返回项目运行所在环境的一些信息。在应用上可以根据不同的环境,做一些配置上的处理。那么我们如何配置环境变量呢?
process.env.xxx中的 xxx 是开发者自己定义的

二、配置环境变量

Windows临时配置

直接在cmd环境配置即可,查看环境变量,添加环境变量,删除环境变量等操作

#node中常用的到的环境变量是NODE_ENV,首先查看是否存在 
set NODE_ENV 

#如果不存在则添加环境变量 
set NODE_ENV=production 

#环境变量追加值 set 变量名=%变量名%;变量内容 
set path=%path%;C:\web;C:\Tools 

#某些时候需要删除环境变量 
set NODE_ENV=
Linux临时配置

查看环境变量,添加环境变量,删除环境变量

#node中常用的到的环境变量是NODE_ENV,首先查看是否存在
echo $NODE_ENV

#如果不存在则添加环境变量
export NODE_ENV=production

#环境变量追加值
export path=$path:/home/download:/usr/local/

#某些时候需要删除环境变量
unset NODE_ENV

#某些时候需要显示所有的环境变量
env

package.json 中设置环境变量

"scripts": {
  "start-win": "set NODE_ENV=dev && node app.js",
  "start-unix": "export NODE_ENV=dev && node app.js",
 }

解决 window 和 unix 命令不一致的问题

安装 npm i cross-env --save-dev

"scripts": {
  "start": "cross-en NODE_ENV=dev && node app.js",
 }

三、理解 cross-env

1. 什么是cross-env呢?

它是运行跨平台设置和使用环境变量的脚本。

2. 它的作用是啥?

当我们使用 NODE_ENV = production 来设置环境变量的时候,大多数windows命令会提示将会阻塞或者异常,或者,windows不支持NODE_ENV=development的这样的设置方式,会报错。因此 cross-env 出现了。我们就可以使用 cross-env命令,这样我们就不必担心平台设置或使用环境变量了。也就是说 cross-env 能够提供一个设置环境变量的scripts,这样我们就能够以unix方式设置环境变量,然而在windows上也能够兼容的。

©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页