2016-06-18 3 views
0

環境に基づいて設定を変更するノードアプリケーションにsettings-moduleがあります。ノードに他の環境エラーを作成しますか?

var settings, 
    environment = process.env.NODE_ENV; 

if(environment === 'developments'){ 
    settings = { 
     facebookCredentials: { 
      clientID: FACEBOOK_APP_ID, 
      clientSecret: FACEBOOK_APP_SECRET, 
      callbackURL: "http://www.example.com/auth/facebook/callback" 
     } 
    }; 
}else if(environment === 'production'){ 
    //here goes live settings. 
}else{ 
    //this is where the error goes. 
} 
exports.settings = settings; 

的環境-nameは何か他のものであれば、私は今、未定義されている設定に関するエラーを取得し、その代わり、私は無効NODE_ENV名に関する何らかのエラーをログに記録します。どうすればこのことができますか?私はノードに慣れていませんが、環境固有の設定を処理する全体的に優れた設計がありますか?

+0

デフォルトの 'if(environment == 'production'){...} else {/ * development * /}'またはその逆の環境を設定できます。 –

答えて

0

いくつかのアプローチがここにあります

  1. 使用console.error
  2. があなたのelseブロック内の実際のエラーを投げ、あなたのエラーログに記録する:throw new Error('Invalid Environment Specified')

私は個人的にオプション2を好むだろう、以来、無効な構成は、迅速かつ明示的に失敗させたいものです。

また、コンフィグレーションnconfの管理に役立つたくさんのモジュールがあります。

関連する問題