[英]How to use different environments with `.env` files in NodeJs
我目前正在用 nodejs 構建后端。 我正在考慮如何給項目添加環境配置。 我的想法是我有一個/config
文件夾,其中有我的envparser.ts
(必須為此考慮一個更好的名稱 ^^),它解釋我的.env
文件以將它們用作常規 javascript const。 通過在我的package.json
中使用腳本,我希望能夠切換環境。 但我不知道如何使用 dotenv 在多個.env
文件之間切換。
文件結構:
config/
.env.development
.env.production
envparser.ts
腳本:
yarn start yarn start -p/-production //Or a different Syntax to change envs
您可以使用dotenv
package 訪問您的.env.*
文件。
您可以使用 package.json 中的不同啟動命令更改NODE_ENV
變量來在不同環境之間package.json
例如:
"scripts": {
"start": "NODE_ENV=development nodemon index.js",
"deploy": "NODE_ENV=production node index.js"
}
然后,你可以在你的 index.js 文件中訪問它們:
require('dotenv').config({ path: `.env.${process.env.NODE_ENV}` })
您可以在package.json
的腳本部分中使用類似的內容
"start:dev": "node -r dotenv/config your_script.js dotenv_config_path=/custom/path/to/.env.development",
"start:prod": "node -r dotenv/config your_script.js dotenv_config_path=/custom/path/to/.env.production"
通過運行npm run start:dev
以DEV
模式啟動服務器
通過運行npm run start:prod
以PROD
模式啟動服務器
您可以在 package.json 的腳本部分中使用類似的內容
“dev”:“nodemon -r dotenv/config index.js”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.