添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

官網只有說,可以在使用前,將環境變數儲存在 process.env [1]
用法下面的程式碼這樣,還可以用 delete 刪掉

1
2
3
4
5
6
process.env.TEST = 1;
console.log(process.env.test);
// => 1
delete process.env.TEST;
console.log(process.env.TEST);
// => undefined

所以,要有一個載入的機制。
就可以將它儲存成 process.env 的 object

使用 dotenv 套件

為了不在程式碼的各處加入新的環境變數,而想要集中在 .env 檔中管理它,所以有大神寫了 dotenv [2] 可以在程式一開始就載入所有的環境變數。

也可以避免在不同的應用程式之間,使用了共用的環境變數。(因為是用 .env 檔載入在該專案中)

npm install dotenv --save

建立 .env 檔 (不要加入 git)

CHRIS=chris
DB_HOST=DB_HOST
DB_PORT=DB_PORT
DB_USER=DB_USER
DB_PASS=DB_PASS

在程式剛啟動時,就可以載入

app.js

require('dotenv').config();
console.log(process.env.CHRIS); //chris
console.log(process.env["DB_HOST"]); //DB_HOST
console.log(process.env["DB_PORT"]); //DB_PORT
console.log(process.env["DB_USER"]); //DB_USER
console.log(process.env["DB_PASS"]); //DB_PASS

感謝 cytsunny 的提醒
確實是 require('dotenv').config(); [3] 沒有什麼 require('dotenv').load();