26

Node.js で構成ファイルを作成する方法は複数あります。1 つは js ファイルで module.exports を使用し、もう 1 つは単純な json オブジェクトを使用します。

// config1.js
module.exports = {
  config_1: "value 1",
  config_2: "value 2"
}
// config2.json
{
  "config_1": "value 1",
  "config_2": "value 2"
}

構成ファイルで module.exports を使用する利点はありますか? 違いは何ですか?

4

3 に答える 3

34

javascript CommonJS モジュール

  • コメント
  • 条件文
  • デフォルトを入力するためのループなど
  • NODE_ENV などに基づいて構成を変更するコード
  • SSL キー、API クレデンシャルなどの外部ファイルを探すコード
  • フォールバックとデフォルトを簡単に設定

JSON ファイル

  • 外部ツールによる解析と更新が容易
  • そこにあるほとんどすべてのプログラミング言語と互換性があります
  • 実行せずにロードできる純粋なデータ
  • きれいに印刷しやすい
  • JSON は基本として開始でき、CommonJS モジュールに関する上記のすべてのコード項目は、開始点として config.json を読み取る config.js モジュールに存在できます。

そのため、便宜上常に commonjs モジュールから始めますが、そこにあるロジックはシンプルに保ちます。config.js にバグがあり、テストが必要な場合は、おそらく複雑すぎます。接吻。事実、他のものが私の構成で突っ込みたいと思っていることがわかっている場合は、JSON ファイルを使用します。

于 2013-08-28T01:55:13.333 に答える
14

@jonathan-ong に感謝します。config.js ( JSON ファイルではありません) が期待どおりに動作するようで、コメントを追加できます。

module.exports = {

  // Development Environment

  development: {
    database: {
      host: '127.0.0.1',
      login: 'dev',
      password: 'dev'
    }
  },

  // Production Environment

  production: {
    database: {
      host: '127.0.0.1',
      login: 'prod',
      password: 'prod'
    }
  }
};
于 2013-08-27T23:47:51.777 に答える