node.js で .env.development などの複数の .env ファイルを切り替える 質問する

node.js で .env.development などの複数の .env ファイルを切り替える 質問する

各モード (開発、本番など) ごとに別々の .env ファイルを使用したいと考えています。vue.js プロジェクトで作業しているときに、.env.developmentまたはなどのファイルを使用して.env.production、同じ env キーに対して異なる値を取得できます。(例: .env.development: FOO=BAR および .env.production: FOO=BAZ の場合、開発モードでは process.env.FOO は BAR になり、本番モードでは BAZ になります)。

私は Express サーバーで作業しており、ポート、DB URI、ユーザー、パスワードなどを保存するために、同じ種類の .env ファイルを使用したいと考えています。

package.json 内のスクリプトを次のように編集できることはわかっています。

"scripts": {
    "start": "NODE_ENV=development PORT=80 node ./bin/www",
    "start-prod": "NODE_ENV=production PORT=81 node ./bin/www"
}

しかし、複数の変数を使用すると、これは面倒になります。

使ってみたドテンヴただし、.env ファイルしか使用できないようです。.env.development と .env.production は使用できません。

dotenv パッケージを使用できますか、それとも別のパッケージが必要ですか? または、パッケージなしでこれを実行できますか?

ベストアンサー1

使用する.envファイルのパスは、pathオプション次のようになります:

require('dotenv').config({ path: `.env.${process.env.NODE_ENV}` })

おすすめ記事