通常の読み込み見やすくするために、index.jsのコードは非常にシンプルです console.log('index.js が実行されました') './test.js' から { test } をインポートします。 document.getElementById('btn-wrap').onclick = 関数 () { テスト() } console.log('test.js が実行されました') エクスポート関数test() { 定数値 = 'hello world' console.log('テスト値: ', 値) } index.htmlにボタンを追加する <button id='btn-wrap'>クリック</button> webpack コマンドを実行します。 ボタンがクリックされていないときに test.js が読み込まれていることがわかります。 test.js が大きい場合、それをロードするとパフォーマンスが低下します。必要なときにロードできるようにしたいと考えています。 遅延読み込みindex.jsのコードを修正する console.log('index.js が実行されました') // './test.js' から { test } をインポートします // document.getElementById('btn-wrap').onclick = function () { //テスト() // } document.getElementById('btn-wrap').onclick = 関数 () { console.log('==== ボタンをクリックしてください') インポート(/*webpackChunkName:'test' */"./test") .then(({テスト}) => { console.log('テストが正常にロードされました') テスト() }) .catch(エラー => { console.log('テストの読み込みに失敗しましたエラー:', error) }) } webpackコマンドを再度実行し、ブラウザでログを表示します。 ボタンをクリックする前にindex.jsのみが読み込まれます ボタンをクリックして下さい: ボタンをクリックするとtest.jsが実行されていることがわかります。 プリロード遅延読み込みは、js ファイルのオンデマンド読み込みを実装します。つまり、必要なときにのみ js ファイルが読み込まれます。ただし、js ファイルが非常に大きく読み込みが遅い場合は、使用中に読み込むとページがフリーズします。この問題を最適化するには、最初にプリフェッチを使用してプリロードすることができます。 プリロードを使用しないボタンがクリックされるまで test.js ファイルは読み込まれません test.jsファイルはボタンをクリックした後にのみ読み込まれます プリロードの使用プリロードを使用するには document.getElementById('btn-wrap').onclick = 関数 () { console.log('==== ボタンをクリックしてください') インポート(/*webpackChunkName:'test'、webpackPrefetch:true*/"./test") .then(({テスト}) => { console.log('テストが正常にロードされました') テスト() }) .catch(エラー => { console.log('テストの読み込みに失敗しましたエラー:', error) }) } ボタンをクリックする前に、test.js ファイルがプリロードされます。 ボタンをクリックして下さい: 要約する通常の読み込み: 多くのリソースが並行して読み込まれ、複数のファイルが同時に読み込まれます 遅延読み込み: 必要なときだけ読み込む プリロード: 他のリソースがロードされ、ブラウザがアイドル状態になるまで待機し、プリロードするように設定されたリソースを秘密裏にロードします。 この記事はこれで終わりです。皆さんのお役に立てれば幸いです。また、123WORDPRESS.COM のその他のコンテンツにも注目していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: ウェブデザインの発展と西洋建築の類似点は何でしょうか?
>>: Ubuntu 18.04 で apt ソースを Alibaba Cloud ソースに変更する詳細なプロセス
コードをコピーコードは次のとおりです。 <!DOCTYPE html PUBLIC "...
目次ビジネス要件:解決策 1: vuex-persistedstate解決策2: vuex-pers...
目次Axios リクエストQs処理データ分析Vantアップロードファイル形式完全なコードこの記事では...
Docker はコンテナを起動するときにアクセス ポートを指定します。複数の -p オプションを使用...
まず、公式サイト https://dev.mysql.com/downloads/mysql/5.7...
CSS の適用範囲はグローバルです。プロジェクトがどんどん大きくなり、参加する人が増えるにつれて、命...
<br />Web ページによっては、サイズは大きくないように見えても開くのに非常に時間...
1. 基本概念 //任意のコンテナを Flex レイアウトとして指定できます。 。箱{ ディスプレイ...
この記事では、例を使用して、MySQL データベースの最適化のためのテーブルおよびデータベース シャ...
目次1. 属性を追加する2. 複数のオブジェクトを結合する3. オブジェクトのプロパティを削除する4...
導入以前、ある問題に気づきました。学習ビデオを視聴しているとき、動きが遅すぎる、先生が黒板に書くのに...
インデックスのマージは、MySQL が最下層で提供するインテリジェントなアルゴリズムです。インデック...
<br />質問: Word のコンテンツを Web サイトのエディターに直接コピーする...
この記事では、マウスをスライドすると愛が広がる js 特殊効果を紹介します。効果は次のとおりです。 ...
問題の説明ESXI で Windows にワークステーションをインストールした後、内部の仮想マシンは...