背景
在前端开发中,我们经常需要在不同的环境下进行开发、测试和部署,比如本地开发环境、测试环境和生产环境。针对不同的环境,我们通常需要配置不同的变量,如 API 地址、数据库连接地址等等。手动配置这些变量很麻烦且容易出错,因此我们需要一种便捷的方式来管理环境变量。
menv 是一个基于 Node.js 的 npm 包,它提供了一种简单的方式来管理环境变量。它可以帮助我们在不同的环境下设置不同的环境变量,同时也可以方便地读取这些环境变量。
安装
使用 npm 安装 menv:
npm install menv --save
使用
设置环境变量
menv 的基本使用是设置不同环境下的环境变量。我们可以在不同的环境中设置不同的环境变量来实现不同配置。
在项目的根目录下新建一个 .env
文件,输入以下变量:
DATABASE_URL = "localhost:3306"
这里我们只设置了一个变量 DATABASE_URL,它的值为 localhost:3306。
读取环境变量
在代码中使用 menv 读取环境变量非常简单。我们只需要使用下面的代码来读取环境变量的值:
const menv = require('menv'); const dbUrl = menv.get('DATABASE_URL');
上面的代码就可以获取到 .env
文件中设置的 DATABASE_URL 变量的值。
配置多个环境
通常项目会有开发、测试和生产等多个环境,我们可以使用 menv 来实现在不同的环境中设置不同的变量。
在项目根目录下新建 .env.development
、.env.test
和 .env.production
文件,分别用来定义开发、测试和生产环境的变量。
切换环境
menv 提供了一种简单的方式来切换环境,我们只需要设置一个环境变量 NODE_ENV 即可。
NODE_ENV=development node app.js
上面的代码就可以在开发环境下运行应用程序,并读取 .env.development
文件中配置的变量。
示例代码
以 koa 应用程序读取环境变量为例:
-- -------------------- ---- ------- ----- --- - --------------- ----- ---- - ---------------- ----- --- - --- ------ ------------- ----- -- - ----- ----- - ------------------------- -------- - --------- --- -- ---------- --- -----------------
在 .env
文件中设置:
DATABASE_URL = "localhost:3306"
在 .env.development
文件中设置:
DATABASE_URL = "dev.example.com:3306"
在 .env.test
文件中设置:
DATABASE_URL = "test.example.com:3306"
在 .env.production
文件中设置:
DATABASE_URL = "prod.example.com:3306"
运行应用程序:
NODE_ENV=development node app.js
访问 http://localhost:3000
就可以看到输出结果了。
总结
menv 提供了一种简单的方式来管理环境变量,可以方便地设置、读取不同环境下的环境变量,同时也能够方便地切换不同的环境。如果你还没有使用过 menv,那么就来试试吧!
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600672683660cf7123b3668f