手机版

Node.js中环境变量process.env的详细说明

时间:2021-09-03 来源:互联网 编辑:宝哥软件园 浏览:

最近两天一直在和运维GG合作部署项目。遇到的一个问题是我们的开发、用户验收测试和产品环境的问题。

由于前端和后端是分离的,在开发部署过程中会出现后端接口域名切换的问题。经过一个漫长的下午,我搜索了各种数据,然后算出了Node环境变量process.env

这是解决问题的记录。希望能帮助这个不懂的人。话不多说,我们来看看详细的介绍。

节点环境变量

首先,我们在开发react和vue的单页应用时,相信大家对配置文件中的process.env并不熟悉。

不记得了?黑人问题mark.jpg。

就是下面这些东西。

从字面上看,这是env属性,在不同的开发和生产环境中,配置会有所不同。

好了,让我们开始看看这个所谓的过程是什么。

文件:http://nodejs.cn/api/process.html

官方解释:流程对象是一个全局变量,提供相关信息,控制当前Node.js流程。作为一个对象,它始终对Node.js应用程序可用,因此不需要使用require()。

事实上,process是nodejs中的一个全局变量。

然后,我们可以通过这个所谓的过程得到一些有趣的东西。

然而,今天我们主要讨论process.env

process.env

这是什么?

官方的: process.env属性返回一个包含用户环境信息的对象。

文件:http://nodejs.cn/api/process.html#process_process_env

哦,哦,原来的属性可以返回一些关于项目运行环境的信息。

有什么用?

一个显而易见的使用场景,我们可以用它来标记服务器。这样,我们可以根据不同的环境做一些配置处理。比如打开sourceMap,后端接口的域名切换等等。

你是开发环境,他是用户验收测试环境,她是产品环境。如何配置环境变量

我们来谈谈如何配置每个环境的环境变量。

Windows配置

临时配置

您可以直接在cmd环境中配置它,并查看、添加和删除环境变量。

#node中常用的环境变量是NODE_ENV,首先检查set NODE_ENV #是否存在,然后添加环境变量set NODE_ENV=production #环境变量追加值set变量名=%变量名%;变量内容集路径=% path %C: \ webC: \工具#有时需要删除环境变量集NODE_ENV=永久配置

右键单击(这台电脑)-属性-高级系统设置-环境变量.

Linux配置

暂时的

查看、添加和删除环境变量

#node中常用的环境变量是NODE_ENV。首先,检查echo $NODE_ENV#是否存在。如果不存在,添加环境变量export NODE_ENV=production#环境变量附加值export path=$ path :/home/download 3360/usr/local/#有时需要删除环境变量unset NODE_ENV#有时需要永久显示所有环境变量ENV

打开配置文件

#所有用户生效vim /etc/profile#当前用户生效vim ~/。bash_profile在文件末尾添加如下语句来设置或修改环境变量

#在文件末尾添加以下格式的环境变量export path=$ path :/home/download :/usr/local/export node _ env=product。最终修改后,您需要运行以下语句来重新加载系统

# source /etc/profile修改后的/etc/profile # source ~/。修改后的bash_profile。bash _ profile解决了环境带来的后端接口转换问题

弄清楚这个问题后,我们可以在不同环境的机器上设置不同的NODE_ENV,虽然这个字段不是必须的。也可以切换到其他NODE _ ENV _ NIZUISHUAI等等,反正都是定制的。

解决步骤

1.修改代码中的后端地址配置

用field process.env.NODE_ENV来判断非常简单。(process是节点的全局属性,直接使用就可以了。)

2.在linux上设置环境变量

导出NODE_ENV=dev,然后你就可以愉快地开始这个项目了。

说在最后

因为我现在正在React服务器上渲染这个项目。因此,后端请求转发不会交给nginx处理。和普通的纯单页应用一样,nginx一般用于请求转发。

这篇文章写得很快,哈哈,如果这篇文章有什么瑕疵,请给我一些建议,我会学会学习的。

另外,如果这篇小文章对你有帮助,请给我一个赞美,这将是我继续下去的巨大动力。

谢谢~ ~

参考

环境变量——JasperXu的博客:http://sorex.cnblogs.com/p/6200940.html如何看待和设置NODE_ENV的值?http://cnodejs.org/topic/587dc8a62967eeb01aafe87b node . js的:进程模块: http://www.css88.com/archives/4548注:【如何配置环境变量】是直接引用的JasperXu博客的环境变量。

摘要

以上就是本文的全部内容。希望本文的内容对大家的学习或工作有一定的参考价值。有问题可以留言交流。谢谢你的支持。

版权声明:Node.js中环境变量process.env的详细说明是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。