2017-11-13 14 views
0

私は以下を使用していますVue SPA boilerplate、これはwebpackに基づいています。実行時のコマンドライン引数へのアクセス

アプリがデベロッパーサーバーまたはデプロイされたバージョンで実行されている場合、私はprocess.env.NODE_ENVを使用して、開発ビルドか本番ビルドかを判断できます。ここまでは順調ですね。

私が後にしているのは、同じ方法で解析できるコマンドライン引数を渡す方法です。つまり、npm run dev --foo=1process.argv.slice(2).fooのようなものを使用して取得できます。

私は、設定ファイル内にprocess.argvを使用してコマンドライン引数にアクセスし、設定ファイルを飾るなどの作業にアクセスしようとしました。

は私も成功せず

module.exports = env => { 
    // make use of env 
} 

のようなものにノードモジュールのエクスポートを「ENV」--env.fooを通じて引数を渡すと、変更しようとしています。

明らかなものがありませんか?

+0

コマンドライン引数に基づいて単一の設定ファイルの内容を変更しようとしていますか? – msanford

+0

@msanfordはい、コマンドラインパラメータに基づいた 'process.env'の別の変数で十分です。 – Johan

+0

このタイプのパターンの通常のパターンは、複数の完全な設定ファイルを維持し、ロード時にそれらの間で選択することです。また、人間工学的理由からコマンドラインフラグが必要な間に 'env =" foo "npm run dev'と' npm run dev --env = foo'の両方が同じ状況下で実行可能であることを追加します。 – msanford

答えて

0

このタイプのものの通常のパターンは、複数の完全な構成ファイルを維持し、ロードされたときにそれらの間で選択することです。ただし、おそらくもっと簡潔ではありません。

私はまた、あなたは人間工学的な理由のために、コマンドラインフラグを望むかもしれないことを

env="foo" npm run dev 

npm run dev --env=foo 

を追加しますが、両方の最もの状況でも同様に実行可能です。

関連する問題