基本的にはVue CLI の公式ページや他の方の記事を確認すればわかりますが、実際に適用するやり方が明記されていないように思えたので記載しました。
環境
・ Vue CLI: 3.6.3
作成前提
今回はローカル環境、開発環境、本番環境の 3 つを用意します。
環境変数設定方法
.env ファイルの作成
プロジェクトファイルのルートディレクトリに
.env.local
.env.development
.env.prod
を作成します。
それぞれのファイルの書き方の例は下記の通りです。
それぞれの環境で使用したい、API の Base URL 等を記載します。
Vue CLI では.local
がつくものは.gitignore で git には push しないように初期設定されています。
.env ファイルの変数にはVUE_APP_
の接頭辞が必要になります。
NODE_ENV='local'
VUE_APP_API_BASE_URL='https://localhost:8080/api/v1/xxx'
NODE_ENV='development'
VUE_APP_API_BASE_URL='https://development/api/v1/xxx'
NODE_ENV='production'
VUE_APP_API_BASE_URL='https://production/api/v1/xxx'
package.json の設定
package.json のscripts
に下記のように追記します。
package.json のscripts
ではエイリアスを作成することができます。
"scripts": {
"local-serve": "vue-cli-service serve --mode local",
"dev-serve": "vue-cli-service serve --mode development",
"prod-serve": "vue-cli-service serve --mode production",
"dev-build": "vue-cli-service build --mode development",
"prod-build": "vue-cli-service build --mode production",
}
使用方法
package.json を上記のように設定することで、
yarn local-serve
を実行すると.env.local
の環境変数が適応されるようになります。
同様にyarn dev-build
を実行すると.env.development
に定義された環境変数を用いた build モジュールが作成されるので、各々の開発環境にデプロイしてください。
参考
.env ファイルについて: vue-cli で環境変数を使う←リンクがきれています。