vue cli で env を使用するガイド

vue cli で env を使用するガイド

序文

vueCli を使用してプロジェクトを開発したことのある方は、少しがっかりしていると思います。通常の開発時には、3 つのインターフェース環境 (開発、テスト、正式) がありますが、vueCli は開発モードと本番モード (テスト - 単一テストを除く) の 2 つのモードしか提供していません。実際、これは友人が vueCli のドキュメントを理解していないために発生します。

vueCliコマンドでは、--modeはNODE_ENVではなく.env.[mode]に対応します。

知らせ

VUE_APP_ 変数に加えて。

特別な変数が 2 つあります。

  • NODE_ENV: 開発、本番、テストのいずれかです。その値は、アプリケーションが実行されているモードによって異なります。
  • BASE_URL: これは、アプリケーションがデプロイされる基本パスである vue.config.js の publicPath オプションと一致します。

紹介-公式

モードは、Vue CLI プロジェクトにおける重要な概念です。デフォルトでは、Vue CLI プロジェクトには 3 つのモードがあります。

  • 開発モードはvue-cli-service serveに使用されます
  • テストモードはvue-cli-service test:unitに使用されます
  • プロダクションモードは、vue-cli-service ビルドと vue-cli-service テストに使用されます:e2e

--mode オプション引数をコマンドラインに渡すことで、デフォルト モードを上書きできます。

vue-cli-service コマンドを実行すると、すべての環境変数が対応する環境ファイルから読み込まれます。ファイルに NODE_ENV 変数が含まれていない場合、その値はモードによって異なります。たとえば、本番モードでは「production」に設定され、テスト モードでは「test」に設定され、デフォルトは「development」になります。

NODE_ENV は、アプリの実行モード(開発、本番、テストのいずれ)を決定し、作成される webpack 構成も決定します。

たとえば、NODE_ENV を "test" に設定すると、Vue CLI は、ユニットテストに必要のない画像やその他のリソースを処理しない、ユニットテスト用に設計された最適化された webpack 構成を作成します。

同様に、NODE_ENV=development は、開発中に迅速に再構築できるように、ホットロードを有効にし、アセットをハッシュせず、ベンダーバンドルを生成しない webpack 構成を作成します。

vue-cli-service ビルド コマンドを実行するときは、どの環境にデプロイするかに関係なく、デプロイ可能なアプリケーションを取得するために、常に NODE_ENV を「production」に設定する必要があります。

設定例

以下のように3つの設定ファイルがあります。

#.env.開発
NODE_ENV=開発
VUE_APP_AXIOS_BASEURL=http://xxxx
#.env.preview テスト環境設定 NODE_ENV=production
VUE_APP_AXIOS_BASEURL=http://xxxx
#.env.production
NODE_ENV=本番
VUE_APP_AXIOS_BASEURL=http://xxxx

アクシオスでの使用

「axios」からaxiosをインポートします。
定数conf = {
  ベースURL: process.env.VUE_APP_AXIOS_BASEURL、
};
axios.create(conf) を返します。

package.json 構成

{
  「スクリプト」: {
    "サーブ": "vue-cli-service サーブ",
    "ビルド": "vue-cli-service ビルド --mode プレビュー",
    "build:release": "vue-cli-service ビルド"
  }
}

起動方法

npm run serve #デフォルトdev
npm run build #テスト環境 npm run build:release #正式環境

vue cli の env の使用ガイドに関するこの記事はこれで終わりです。より関連性の高い vue cli env コンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • vueプロジェクトのマルチ環境設定(.env)の実装
  • .env ファイルを使用して Vue プロジェクトでグローバル環境変数を設定する方法
  • Vue での cross-env の使用に関する詳細な分析

<<:  kindとDockerを使用してローカルKubernetes環境を起動する

>>:  MySQLの日付と時刻の間隔計算の分析例

推薦する

JavaScript におけるシリアル操作と並列操作

目次1. はじめに2. es5メソッド3. 非同期関数のシリアル実行4. 非同期関数の並列実行5. ...

Vue バックグラウンドでステータス ラベルをエレガントに記述する例

目次序文最適化変数の抽出二次包装 el-tag コンポーネント使用要約する序文バックエンドシステムの...

スライダー間隔コンポーネントのネイティブ js 実装

この記事の例では、スライダー間隔コンポーネントを実装するためのjsの具体的なコードを参考までに共有し...

mysql bin-log ログファイルを sql ファイルに変換する方法

mysqlbinlogのバージョンを表示mysqlbinlog -V [--version] bin...

MySQLでヘッダー付きのCSVファイルをエクスポートする方法

公式ドキュメント http://dev.mysql.com/doc/refman/5.7/en/se...

入力選択スタイルを変更する CSS 疑似クラスのサンプルコード

注: この表はW3Schoolチュートリアルから引用したものです疑似要素の分類と機能: 入力選択スタ...

イントラネット侵入を実現するためのSSHポート転送

LAN 内のマシンは外部ネットワークにアクセスできますが、外部ネットワークは内部ネットワークにアクセ...

Vue2とVue3のライフサイクルの比較の詳細な理解

目次サイクル比較使用法要約するサイクル比較ヴュー2ヴュー3作成前設定作成された設定マウント前マウント...

MySQL トリガーの使用方法と利点と欠点の紹介

目次序文1. トリガーの概要2. トリガーの作成2.1 トリガー構文の作成2.2 コード例3. トリ...

Vueでショッピングカートのすべての機能を実装する簡単な方法

主な機能は次のとおりです。製品情報を追加する製品情報を変更する単一の製品を削除する複数の製品を削除す...

Linux で圧縮ファイルの内容を表示する 10 の方法 (要約)

一般的に、アーカイブされたファイルや圧縮されたファイルの内容を表示するには、まず解凍してから表示する...

HTMLの水平線注釈とコードコメントの使い方をマスターするだけです

水平線<hr /> タグを使用して、現在の位置に水平の分割線を描画します。例: XML/...

Nginx の add_header ディレクティブに注意する必要があるのはなぜですか?

序文ご存知のとおり、nginx 構成ファイルは add_header ディレクティブを使用して応答ヘ...

Linuxコマンドのファイル上書きとファイル追加の詳細な説明

1. コマンド > と >> の違いコマンド>: ファイルが存在する場合は、...

Linux でバックグラウンドで実行中のプログラムを表示して終了する方法

1. .shファイルを実行する./sh ファイルを使用して直接実行することもできますが、現在のターミ...