私は自分のプロジェクトを単純なものからnode server.jsGruntの使用にシフトしています。
以前はWebstormから直接アプリケーションを実行していましたが、環境変数が設定されていました。
Gruntで同じことをどのように達成できますか?
webstorm(windows)からgruntを実行するか、gruntを実行するときにenv varsを設定する必要があります(明示的に)
herokuがすでにenvvarsの設定を処理しているため、これはデプロイ時に問題になりません。
私は自分のプロジェクトを単純なものからnode server.jsGruntの使用にシフトしています。
以前はWebstormから直接アプリケーションを実行していましたが、環境変数が設定されていました。
Gruntで同じことをどのように達成できますか?
webstorm(windows)からgruntを実行するか、gruntを実行するときにenv varsを設定する必要があります(明示的に)
herokuがすでにenvvarsの設定を処理しているため、これはデプロイ時に問題になりません。
grunt-env プラグインを使用します: https://npmjs.org/package/grunt-env
そしてあなたの設定を設定してください:
grunt.initConfig({
env : {
options : {
//Shared Options Hash
},
dev : {
NODE_ENV : 'development',
DEST : 'temp'
}
},
'another-task': {}
});
gruntfile では、おそらくいくつかのデフォルト タスクを定義します。
grunt.registerTask('default', ['env', 'another-task']);
したがって、最初に「grunt default」を実行すると、環境変数が設定され、次に「another-task」が実行されます
コマンドライン オプションで現在の環境を指定する場合は、grunt.option を使用できます。
grunt.initConfig({
env : {
options : {
//Shared Options Hash
},
dev : {
NODE_ENV : grunt.option('environment') || 'development',
DEST : 'temp'
}
},
この例では、grunt タスクを--environment=productionproduction で呼び出すと設定され、それ以外の場合は development が設定されます