Node.js+Express+Mysql服务添加环境变量

1、使用dotenv插件

1)安装插件:npm install dotenv-cli --save-dev

2)在项目根目录下添加对应的 .env 配置文件;

javascript 复制代码
// .env配置文件内容
MODE='development',
BASE_URL='http://127.0.0.1:8081'

3) 在启动命令中设置对应的加载文件:dotenv -e .env.xxxx

javascript 复制代码
// package.json文件
...
  "scripts": {
    "nodemon-serve": "nodemon app.js",
    "nodemon-serve:test": "dotenv -e .env.test nodemon app.js",
    "nodemon-serve:prod": "dotenv -e .env.production nodemon app.js",
    "serve": "dotenv -e .env.production nodemon app.js",
    "serve:local": "node app.js",
    ...
  }

4)在入口文件app.js中引入dotenv插件,并加载默认配置文件

javascript 复制代码
// app.js文件
...
// 默认加载的是.env文件
require('dotenv').config();

// 使用 process.env.xxx 访问配置文件中对应key的内容
console.log('BASE_URL:', process.env.BASE_URL);
console.log('MODE:', process.env.MODE);



2、在package.json文件的运行命令中设置NODE_ENV环境变量,根据环境变量的值读取对应的配置文件

javascript 复制代码
// package.json文件
...
"scripts": {
    "nodemon-serve": "set NODE_ENV=development && nodemon app.js",
    "nodemon-serve:test": "set NODE_ENV=test && nodemon app.js",
    "nodemon-serve:prod": "set NODE_ENV=production && nodemon app.js",
 }

2)通过process.env.NODE_ENV访问设置的环境变量

javascript 复制代码
// app.js文件
...
console.log('NODE_ENV:', process.env.NODE_ENV.trim());


相关推荐
DemonAvenger1 分钟前
NoSQL与MySQL混合架构设计:从入门到实战的最佳实践
数据库·mysql·性能优化
程序新视界28 分钟前
如何在MySQL中创建聚集索引?
mysql
AAA修煤气灶刘哥11 小时前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql
程序新视界12 小时前
学习MySQL绕不开的两个基础概念:聚集索引与非聚集索引
mysql
RoyLin15 小时前
TypeScript设计模式:适配器模式
前端·后端·node.js
RestCloud15 小时前
跨境数据传输:ETL如何处理时区与日期格式差异
mysql·api
得物技术19 小时前
MySQL单表为何别超2000万行?揭秘B+树与16KB页的生死博弈|得物技术
数据库·后端·mysql
xiaok19 小时前
mysql中怎么创建一个可控权限数据库账号密码给到开发者
mysql
RoyLin20 小时前
TypeScript设计模式:迭代器模式
javascript·后端·node.js
ByteBlossom1 天前
MySQL 面试场景题之如何处理 BLOB 和CLOB 数据类型?
数据库·mysql·面试