2015-02-23 27 views
0

從config/development.json的配置不覆蓋默認config/config.json對我來說。KrakenJS不覆蓋development.json

我使用KrakenJS自己的護照示例作爲我的基本代碼。

我已經將NODE_ENV設置爲'development',並且在development.json和「env」:「production」中添加了「env」:「development」到默認config.json。

還增加了從spec.js控制檯日誌:

return { 
    onconfig: function(config, next) { 

     var dbConfig = config.get('databaseConfig'), 
      cryptConfig = config.get('bcrypt'); 

     console.log('Config Environment is: config.env: ', config.get('env')); 

     crypto.setCryptLevel(cryptConfig.difficulty); 
     db.config(dbConfig); 
     // userLib.addUsers(); 
     next(null, config); 
    } 
}; 

這裏是從控制檯輸出:

[發展]上偵聽http://localhost:8000
配置環境是:config.env:生產
db連接打開

我需要一個不同的回調URL用於Facebook登錄的開發。但我無法看到覆蓋config.json的開發配置。我在這裏錯過了什麼?請幫忙。謝謝。

+0

添加'「env」:「anything」沒有用 - Kraken自己根據環境變量設置配置的env。 你是如何設置環境變量的? – aredridel 2015-02-23 18:16:35

+0

這個「env」只是爲了調試,所以我知道哪個配置文件被加載。我從這裏閱讀:https://github.com/krakenjs/kraken-js配置部分,development.json的重寫應該是自動的。 – shallowcal 2015-02-23 18:26:41

+0

我已經將NODE_ENV設置爲「開發」 – shallowcal 2015-02-23 18:28:38

回答

0

你不想在配置文件中使用env - 只能由NODE_ENV環境變量設置。加載配置文件的命令confit將覆蓋之前的值,併爲您留下錯誤的值。

+0

請在評論中看到我的回覆。我已經正確設置了NODE_ENV,JSON中的環境只是一個用於顯示正在加載哪個配置的文本。我可以把它命名爲湯姆和傑裏或其他任何東西,但這不是問題。配置文件會根據NODE_ENV變量自動加載或覆蓋。我應該如何配置confit? – shallowcal 2015-03-08 09:40:30