vue-router を遅延ロードする 3 つの方法のまとめ

vue-router を遅延ロードする 3 つの方法のまとめ

遅延読み込みを使用しない

'vue' から Vue をインポートします。
'vue-router' から Router をインポートします。
'@components/HelloWorld' から HelloWorld をインポートします。
Vue.use(ルーター);
デフォルトの新しいルーターをエクスポートします({
ルート:[
	{パス:'。/'、
	名前:'HelloWorld',
	コンポーネント:HelloWorld
	}
]
})

vue 非同期コンポーネント

コンポーネント:resolve=>{reuqire(['ロードするルーティングアドレス']),resolve)

'vue' から Vue をインポートします。
'vue-router' から Router をインポートします。
const HelloWorld=resolve=>{require(["@/components/HelloWorld"],resolve}
Vue.use(ルーター);
デフォルトの新しいルーターをエクスポートします({
ルート:[
	{パス:'。/'、
	名前:'HelloWorld',
	コンポーネント:HelloWorld
	}
]
})

ES6 インポート()

'vue' から Vue をインポートします。
'vue-router' から Router をインポートします。
HelloWorld をインポートします =()=>import('@/components/HelloWorld');
Vue.use('ルーター')
デフォルトの新しいルーターをエクスポートします({
	ルート:[{
	{パス:'。/'、
	名前:'HelloWorld',
	コンポーネント:HelloWorld
	}
	}]
})

webpack の require.ensure()

require.ensure は、js、css などのリソースをオンデマンドで読み込むことができます。必要なファイルは個別にパッケージ化され、メイン ファイルと一緒にパッケージ化されることはありません。

最初のパラメータは配列であり、2 番目のパラメータに必要なモジュールを示し、事前にロードされます。

2 つ目はコールバック関数です。このコールバック関数では、必要なファイルは別のチャンクにパッケージ化され、メイン ファイルと一緒にパッケージ化されることはありません。このようにして、2 つのチャンクが生成されます。最初のロードではメイン ファイルのみがロードされます。

3 番目のパラメータはエラー コールバックです。

4番目のパラメータは、別々にパッケージ化されたチャンクのファイル名です。

'vue' から Vue をインポートします。
'vue-router' から Router をインポートします。
定数HelloWorld=解決=>{
		require.ensure(['@/components/HelloWorld'],()=>{
			解決(require('@/components/HelloWorld'))
		})
	}
Vue.use('ルーター')
デフォルトの新しいルーターをエクスポートします({
	ルート:[{
	{パス:'。/'、
	名前:'HelloWorld',
	コンポーネント:HelloWorld
	}
	}]
})

要約する

これで、vue-router の遅延読み込みの 3 つの方法についての記事は終了です。vue-router の遅延読み込みに関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vueルーターはパラメータを渡し、ページを更新するときにパラメータが失われる問題を解決します
  • Vue-routerルーティングの使い方
  • Vue-router プログラムナビゲーションの 2 つの実装コード
  • Vue-router ルーティングの遅延読み込みとそれを実装する 3 つの方法
  • Vue-routerのハッシュモードと履歴モードの違いの詳細な説明
  • vue-routerはメタ情報メタ操作を定義します
  • Vue ルーターのインストールと使用状況の分析
  • vue3.0+vue-router+element-plusの初期練習
  • Vue ルーターにパラメータを渡すときにページを更新するとパラメータが失われる問題に対処する方法

<<:  MySQL 5.7 でデータベースのデータ保存場所を変更する方法

>>:  Nginxのアクセス制限設定の詳細な説明

推薦する

VMware 15 仮想マシンに Ubuntu 18.04 をインストールするグラフィック チュートリアル

ここ数年、私は自動化とコンピューターを行ったり来たりしてきました。最近は、機械学習に関連するプロジェ...

jQueryは要素を追加した後に元のイベントが実行されない問題を解決します

まずエラーコードを見てみましょう。 html: <テーブルボーダー="1"...

MySQL マスタースレーブレプリケーションの原理からインストールと設定までを包括的に解説します。

マスタースレーブレプリケーションがなぜ必要なのでしょうか? 1. 複雑な業務システムでは、SQL 文...

MySQL データベースは何をしますか?

MySQL はリレーショナル データベース管理システムです。リレーショナル データベースは、すべて...

MySQL 使用仕様の概要

1. InnoDBストレージエンジンを使用する必要がありますCPU と IO のパフォーマンスが向上...

qt.qpa.plugin の問題を解決: Ubuntu 18.04 の Qt で Qt プラットフォーム プラグイン「xcb」をロードできませんでした

問題の説明Qt5.15.0 をインストールした後、テスト ケースを実行するとエラーが表示されます。 ...

HTML+CSS+jQuery はスクリーンショットで検索ホットリストタブ効果を模倣します

コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBLIC "...

Element-ui の組み込み 2 つのリモート検索 (ファジークエリ) の使用方法の説明

問題の説明フロントエンドリモート検索やファジークエリと呼ばれる種類のクエリがあります。 Ele.me...

SpringBoot のパッケージ化と Docker へのアップロード、およびマルチインスタンス デプロイメントの実装に関する簡単な分析 (IDEA バージョン)

最近友人からDockerを触ったことがあるかと聞かれました。あまり自信がなかったので答えられませんで...

MySQL PXC クラスターの構築方法

目次1. PXCの紹介1.1 PXC の紹介1.2 PXC の特徴と利点1.3 PXCの限界と欠点1...

Vue でメニュー権限制御を実装するためのサンプルコード

バックエンド管理システムで作業している場合、通常、メニュー権限制御に関連する問題に遭遇します。もちろ...

VMware ワークステーション 12 に Ubuntu 14.04 (64 ビット) をインストール

1. インストール環境コンピュータモデル: Lenovo Y471a (i5) ノートパソコンシステ...

Dockerはrabbitmqのサンプルコードをインストールして実行します

イメージをプルします: [mall@VM_0_7_centos ~]$ sudo docker pu...

CD コマンドを使わずに Linux でディレクトリ/フォルダに入る方法

ご存知のとおり、cd コマンドがないと、Linux でディレクトリを切り替えることはできません。それ...

1時間で学ぶMySQLの基礎

目次MySQL を使い始めるMySQL 管理6. MySQL サーバーを起動および停止します。 7....