2017-02-22 21 views
3

我是新來的Node.JS.我發現了幾篇文章說,我們可以使用.ENV文件來設置process.env變量,例如,如何從NodeJS中的文件設置process.env?

PORT = 8081 

,但是當我在節點上運行的程序,它仍是8080端口(默認)。問題是如何在沒有任何其他第三方模塊的幫助下在Node中設置env變量? (我發現管理env config的第三方軟件包很少,但是......它有點困惑,不同的軟件包可能會有不同的規則和更復雜的用例;我想從純粹的方式開始學習純粹的nodejs)

更新

我已經閱讀計算器節點環境設置的職位,但他們使用的第三方包是指,他們沒有告訴具體步驟。 (不是Windows系統環境或Linux環境變量...但我怎麼可以把設置爲我的項目文件夾?)

+1

你可以在這裏參考:http://stackoverflow.com/questions/22312671/node-js-setting-environment-variables希望幫助你! – NguyenTungs

+0

[Node.js:設置環境變量]的可能的重複(http://stackoverflow.com/questions/22312671/node-js-setting-environment-variables) –

+0

@TungNguyen我已經閱讀過那篇文章,但他們是參考使用第三方軟件包,他們都沒有告訴詳細步驟。 (無論是windows系統環境,還是Linux環境變量......但是我怎樣才能將設置放到我的項目文件夾中?) –

回答

3

Dotenv文件已經成爲最流行的模式configuratione從應用程序分開,使用的系統環境變量(見12factor config)。

節點上存在很多用於從.env文件加載配置的庫。最受歡迎的是motdotla/dotenv。 你可以閱讀很多關於這個庫的使用自述文件的例子

+0

謝謝@DanielNetto:D –

+0

非常正確。 '.env'是設置環境變量的最佳方式。見https://gist.github.com/Robophil/94c8577f34e46e7e0b09d218c7ae9bf2都感謝elliot –

2

請與下面的內容config.js文件:

module.exports = { 
    bar: 'someValue', 
    foo: 'otherValue' 
    ... 
} 

然後你可以在一些文件中做到這一點:

const config = require('./config'); 
let foo = config.foo; 
+0

我的系統有一個process.env對象(我不知道它來自哪裏;這是關鍵問題)。它在c9.io機器上。 –

+1

process.env它是獲取環境變量的別名! – jesusgn90

相關問題