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のアクセス制限設定の詳細な説明

推薦する

スキニングを実現するネイティブJavaScript

ネイティブJavaScriptでスキニングを実装するための具体的なコードは参考までに。具体的な内容は...

Web プロジェクトでの SQL インジェクションの防止

目次1. SQLインジェクションの概要2. SQLインジェクション攻撃の全体的な考え方SQLインジェ...

デザイン理論:計画、リソース、コミュニケーションの問題について

<br />多くの中小企業ではこの問題は発生しません。中小企業はデザイナーをサポートし、...

JavaScript 関数のカリー化

目次1 関数カリー化とは何ですか? 2 カレーの役割と特徴2.1 パラメータの再利用2.2 早期復帰...

React onClickにパラメータを渡す問題について話しましょう

背景下のようなリストでは、削除ボタンをクリックすると削除操作を実行する必要があります。 リスト生成:...

CentOS サーバーのセキュリティ構成戦略

最近、ブルートフォース攻撃によるサーバのクラッキングが頻発しています。侵入行為を大まかに分析し、よく...

Vue ページ監視ユーザープレビュー時間機能実装コード

最近のビジネスでは、オンライン トレーニング システムが特定のオンライン プレビュー ページに対する...

MYSQL(電話番号、IDカード)データ非感応化の実装

1. データ感度低下の説明日常の開発ニーズでは、データの感度低下が頻繁に発生します。たとえば、ID ...

Ubuntu 18.04にmysql5.7をインストールする

Ubuntu 18.04では参考までにmysql 5.7をインストールします。具体的な内容は以下のと...

Win7 で IIS7 Web および FTP サービスを完全にアンインストールする方法

昨日、パソコンにPHP開発環境をセットアップした後、Apacheサーバーを再起動するとエラーが続きま...

入力タイプ=ファイルスタイルを定義する方法

ファイルコントロールを美しくする理由は何ですか?他の子供たちはみんなきちんとしたきれいな服を着ている...

Link と @import の違いを詳しく見る

ページで CSS を使用する主な方法は、スタイル属性値をインラインで追加する方法、ページ ヘッダーで...

ミニプログラムは、カスタムのマルチレベル単一選択と複数選択を実装します

この記事では、参考のために、ミニプログラムでカスタムのマルチレベル単一選択および複数選択機能を実装す...

Vueタイムラインコンポーネントの使い方

この記事の例では、参考までにvueタイムラインコンポーネントの具体的な実装コードを共有しています。具...