私たちは私たちのプロジェクトの一つでキーストンフレームワークを使用しています。私は.jsファイルの一つに.envファイル変数を使ってhttpサイトに接続しようとしています。私はdotenvを使い、xxyzはどこですか.envファイルから変数を呼び出す方法が他にある場合は、私に知らせてください。Keystone.js以外の.jsファイルで.envファイル変数を使用するにはどうすればよいですか?
答えて
読むことprocess.env
は、環境変数を取得するための標準的な方法です。 the docsを参照してください。
上記のdotenv
パッケージは、.env
ファイルに記載されているものをとり、process.env
に記載しています。しかし、検証は行われないので、間違いを起こしやすい。
私のenvyモジュールを試してみてください。よくある間違いをすべて防ぎます。これは、とりわけ欠けている変数をチェックします。
.env
ファイルはまだあなたのトラブル与えている場合:
- は、あなたが正しい変数名を使用していることを確認してください。
- タイプミスがないことを確認してください。
- 正しい構文を使用していることを確認してください。
- 代わりにcommand line argumentsを使用することを検討してください。私はこのためにmeowをお勧めします。 envy and meow togetherの使用例も参照してください。構文について
:によっては、使用しているローダーに(envy
対例えばdotenv
)、.env
ファイル内の構文は、それが解析される方法に大きな影響を与える可能性があります。例えば、Bashと(ファイルが基づいている)他のシェルでは、以下の例の一つ一つは
MY_VAR=foo $BAR
MY_VAR='foo $BAR'
MY_VAR="foo $BAR"
はまた、環境変数名は大文字と小文字が区別され、慣例である...完全に異なる動作をしますすべて大文字です。これは、それが珍しい言語の間違いにつながる可能性があります。 Node.jsプログラムの
process.env
では、環境変数の命名規則がプログラムの他の部分と異なることを忘れることがあります。あなたが
envy
を使用している場合、それはそれらを返す前にキャメルケースにする変数名を正規化することによって、これを修正するよう
const myVar = process.env.myVar; // wrong
const myVar = process.env.MY_VAR; // correct
ケーシングは、問題ではありません。
const { myVar } = envy(); // correct, no matter how it is in `.env`
にかかわらず、使用され、ローダの、あなたはもちろん.env
ファイルが読み込まれます前に、その負荷関数を呼び出す必要があります。 のみを使用しているので、これを忘れることはほとんどありません。envy()
しかし、dotenv
を使用している場合は、dotenv.config()
を呼び出す前に、既に利用可能であり、入力されているため、間違った時刻にprocess.env
に簡単にアクセスできます。
デバッグや時間と労力の節約に役立つ別のトリックは、設定用の専用モジュールを作成することです。 require cacheのおかげで、私たちは作業を何度もやることを避け、ローダーがidempotentであることを避けます。
env.js
というファイルに入れてください。
const envy = require('envy');
module.exports = envy();
次に、別の場所にインポートします。
const env = require('./env');
ここでは、デバッグするのが非常に簡単で、どこにインポートしても同じように動作するはずです。
xxyz = HTTPSiteAddressを.envファイルに追加するだけです。そして、process.env.xxyzを使ってどこでも変数を呼び出すことができます。例えば
:
var request = require("request");
request(process.env.xxyz, function(error, response, body) {
console.log(body);
});
これは、限り、あなたのkeystone.jsファイルが先頭に含まれているように動作します:
require('dotenv').config();
を
- 1. .jsファイル内の変数を.htmlファイルから変更するにはどうすればよいですか?
- 2. Code.gs以外のjsファイルでGmailAppを参照するにはどうすればよいですか?
- 3. honcho .envファイルに複数行変数を追加するにはどうすればよいですか?
- 4. 1つのjsファイルを複数のjsファイルに分割するにはどうすればよいですか?
- 5. 他のHTMLファイルと同じJSファイルを使用するにはどうすればよいですか?
- 6. ES6でJSファイルを別のJSファイルにインポートするにはどうすればよいですか?
- 7. xcode以外の.xibファイルを変更するにはどうすればよいですか?
- 8. 他のノードのjsファイルでユーザー変数にアクセスするにはどうすればよいですか?
- 9. 同じJSファイルでJSファイルのURLを取得するにはどうすればよいですか?
- 10. ActiveRecord以外のActiveModel :: ValidationsでI18Nの変換を使用するにはどうすればよいですか?
- 11. 別のSCSSファイルのSCSSカラーマップでカラー変数を使用するにはどうすればよいですか?
- 12. Eclipseの.classpathファイルで環境変数を使用するにはどうすればよいですか?
- 13. 別のjsファイルからjsファイルを含めるにはどうすればよいですか?
- 14. シェルスクリプトを使用してxlsxファイルをcsvファイルに変換するにはどうすればよいですか?
- 15. pandasを使用して.csvファイルを.datファイルに変更するにはどうすればよいですか?
- 16. Angular Jsで変数を使用してページタイトルを変更するにはどうすればよいですか?
- 17. jinjaコンテキスト関数で(グローバル以外の)変数を設定するにはどうすればよいですか?
- 18. ファイルをPERFORCEからワークスペース以外の場所にダウンロードするにはどうすればよいですか?
- 19. YAMLファイルで変数を使用するにはどうすればよいですか?
- 20. app.yamlファイルで環境変数を使用するにはどうすればよいですか?
- 21. 外部babel js(es 6)ファイルをhtmlファイルに含めるにはどうすればいいですか?
- 22. 2つの変数を使用してファイルを作成するにはどうすればよいですか?
- 23. 外部JSリソースをJSファイルに正しくリンクするにはどうすればいいですか?
- 24. PHPを使用して変数列をCSVファイルにエクスポートするにはどうすればよいですか?
- 25. ファイルから英語以外の単語を削除するにはどうすればよいですか?
- 26. csvファイルの名前として変数名を使用するにはどうすればよいですか?
- 27. ファイルのテキストを変数名として使用するにはどうすればよいですか?
- 28. ファイルをダウンロードフォルダ以外のフォルダにダウンロードするにはどうすればよいですか?
- 29. temp以外のディレクトリに一時ファイルを作成するにはどうすればよいですか?
- 30. TypeScript定義ファイルで外部モジュールのタイプを使用するにはどうすればよいですか?