2017-07-11 23 views
-2

在Node.js的項目中使用明確的框架運行自定義配置文件,通常配置文件夾下有3個文件:如何在node.js的項目

  • config.json - 運行在督促ENV
  • development.json - 在運行開發ENV
  • staging.json - 舞臺ENV運行

我想創建一個名爲example.json另一個配置文件,並使用運行本地開發環境而不是development.json,只要代碼運行時使用特殊的環境變量process.env.LOCAL_PROD即可。

有沒有辦法做到這一點?

回答

0

你可以用node-config來做到這一點,我強烈推薦它,因爲它允許多個配置文件甚至是基於主機名的配置文件。它還支持多種格式,包括.js配置不僅.json,您可以閱讀更多關於node-config wiki中配置文件的各種設置。由於使用起來很簡單,我幾乎在所有需要配置的應用程序中都使用它。

現在,如果您不想使用包來處理這個問題,那麼您可以使用require()來完成,因爲它可以讀取和解析.json文件以及.js。設置應用程序運行環境時使用的常用環境變量名爲NODE_ENV

let config 
let env = process.env.NODE_ENV.toLowerCase() 
if (env === 'production') { 
    config = require('./config.json') 
} else if (env === 'staging') { 
    config = require('./staging.json') 
} else if (env === 'dev') { 
    config = require('./development.json') 
} else { 
    console.log('No configurable NODE_ENV detected, no config loaded') 
} 
+0

還有其他節點模塊正在使用基於env變量值的現有配置。我不是隻在一個地方使用該文件。 –

+0

然後通過使用依賴注入的配置 – peteb

+0

什麼是依賴注入?你能詳細說明嗎? –