用.env文件為NodeJS加載環(huán)境變量
使用環(huán)境變量是配置 Node.js 程序的好方法。而且許多包或模塊可以基于不同的 NODE_ENV 變量的值表現(xiàn)出不同的行為。
存儲(chǔ)環(huán)境變量的一種方法是將它們放在 .env 文件中。這些文件允許你指定各種環(huán)境變量及其相應(yīng)的值。
在大多數(shù)情況下,你不希望將 .env 文件添加到源代碼控制中(即Git)。因此,應(yīng)該將它的文件名添加到 .gitignore 文件中,以確保在以后的提交中都被排除在外。
要達(dá)到這個(gè)目的,應(yīng)該先在 Node.js 項(xiàng)目的根目錄中創(chuàng)建一個(gè) .env 文件:
- $ touch .env
并以 NAME = VALUE 的形式在添加特定于環(huán)境的變量。
- # .env
- PASSWORD="12345"
太好了!現(xiàn)在有了一個(gè)帶有我們想要使用的變量的 .env 文件。但是應(yīng)該如何將該變量加載到我們的代碼中呢?
最簡(jiǎn)單的方法是使用名為 dotenv 的 npm 模塊。它將為我們完成所有繁重的工作。
你可以使用以下命令中的任何一個(gè)來(lái)安裝它:
- # Npm
- npm install dotenv --save
- # Yarn
- yarn add dotenv
成功安裝 npm 軟件包后,將以下兩行添加到入口文件的頂部:
- //Node.js
- const dotenv = require("dotenv")
- dotenv.config()
在程序中盡早添加 dotenv.config() 這一行,以確保所有代碼都可以訪問(wèn)你的變量。
process.env 現(xiàn)在具有在 .env 文件中定義的鍵和值。
你可以通過(guò)在 .env 文件中記錄變量來(lái)測(cè)試它:
- // Node.js
- console.log(process.env.PASSWORD) //"12345"
運(yùn)行代碼時(shí),應(yīng)該能夠在命令行輸出中看到變量的值。