2017-05-07 8 views
0

私は、server.jsファイルをdotenvで使用し、srcフォルダにある.envファイルbin/www.jsファイルと一緒に。私がdotenvを使用し始めて以来、以下のすべてを実行しても機能しなくなりました。NodeJsとDotenv - nodemonを実行してもsrcフォルダの.envファイルが見つかりません

nodemon (from the root of my repo) 
npm start 
nodemon src/server 
nodemon src 
etc 

すべての環境変数が正しくロードされません。私は実際のsrcフォルダに移動し、その正確な場所に "nodemon server.js"を実行する必要があります。これは私が使用していたビルド環境のいくつかと、ヒロクのような以前のクラウド設定のいくつかに問題を提起しています。私はserver.jsファイルと同じフォルダに.envファイルがあると思っていましたが、それはうまくいきませんでした。

nodemonがserver.jsファイルを見つけたにもかかわらず、dotenvが.envファイルを見つけられず、どこからnodemonを起動するかによって環境変数が読み込まれないのは誰に教えてもらえますか?

私は基本的に、自分のリポジトリのルートフォルダからnodemonを起動して、まだdotenvの作業をしたいと思っています。また、.envフォルダをルートディレクトリに移動しようとしましたが、まだ問題があります。

答えて

0

私は同じ問題を抱えていましたが、修正する方法を見つけましたが、まったくきれいではありません。

私は--requireは、ノードのためではない

./bin/www 

のために私が使用して終了されるためと考え

node --require dotenv/config --require babel-register ./bin/www 

node ./bin/www --require dotenv/config --require babel-register 

は、同じように動作しないことに気づきました

nodemon({ 
    script: '--require', 
    cwd: './dist', 
    tasks: [ 
    'dist', 
    ], 
    args: [ 
    'dotenv/config', 
    '--require', 
    'babel-register', 
    './bin/www', // YEAH it's weird but 
    ], 
    watch: [ 
    './src', 
    ], 
}); 

ええ、私は知っている、それは醜いですが、あなたがそれを行うより良い方法を持っている場合は、ちょうど私に知らせてください:)

関連する問題