Vue で画像の読み込みとキャッシュを最適化する方法
Vue で画像の読み込みとキャッシュを最適化する方法
現代の Web 開発では、画像の読み込みは重要な側面です。読み込む画像が多すぎると、Web サイトの読み込みが遅くなり、ユーザー エクスペリエンスに影響を与えます。 Web サイトのパフォーマンスを向上させるには、画像の読み込みとキャッシュを最適化することでページの読み込み時間を短縮できます。
1. 画像の遅延読み込み
遅延読み込みは、画像の読み込みを遅らせる技術です。ユーザーがページをスクロールすると、すべての画像を一度にロードするのではなく、表示領域内の画像がロードされます。これにより、最初のページの読み込み時間が短縮されます。
Vue プラグイン vue-lazyload を使用して、画像の遅延読み込みを実装できます。まず、コマンド ラインでプラグインをインストールします。
npm install vue-lazyload --save
次に、次のコードを Vue のエントリ ファイル (main.js など) に追加します。
import Vue from 'vue' import App from './App.vue' import VueLazyload from 'vue-lazyload' Vue.use(VueLazyload) new Vue({ render: h => h(App), }).$mount('#app')
これで、次のコードに追加できます。 Vue コンポーネント 画像の遅延読み込みが実行されます。遅延ロードする必要がある img タグに v-lazy
命令を追加します。
<template> <div> <img src="/static/imghw/default1.png" data-src="imageUrl" class="lazy" v-lazy="imageUrl" alt="示例图片"> </div> </template> <script> export default { data() { return { imageUrl: 'https://example.com/image.jpg' } } } </script>
このように、ユーザーが画像の位置までスクロールすると、画像が自動的にロードされます。
2. 画像の圧縮と結合を使用する
画像の読み込み時間を短縮するために、画像の圧縮と結合テクノロジを使用できます。ファイル サイズと画像の数を減らすことで、ネットワーク リクエストの数と転送されるデータ量を減らすことができます。
TinyPNG や ImageOptim など、画像を圧縮できるオンライン ツールが多数あります。元の画像を圧縮画像に置き換えて、画質が許容範囲内であることを確認します。
さらに、複数の小さなアイコンや画像を 1 つの大きな画像に結合し、CSS スプライト テクノロジを使用して表示する必要がある場所をトリミングすることもできます。これにより、リクエストの数とファイル サイズが削減されます。
3. CDN アクセラレーションとキャッシュ戦略を使用する
コンテンツ配信ネットワーク (CDN) は、静的リソース (画像を含む) を世界中のサーバーに保存できるため、リソースの読み込み速度が向上します。画像を CDN にアップロードし、Vue コンポーネントで CDN 上のリソースを参照することで、画像の読み込みを高速化できます。
さらに、適切なキャッシュ戦略を使用すると、イメージに対する繰り返しのリクエストを減らすことができます。画像のキャッシュ期間 (たとえば、1 か月) を設定して、ユーザーがページに再度アクセスしたときに、ブラウザーがサーバーに再度リクエストするのではなく、キャッシュから画像を直接ロードするようにすることができます。
Vue では、Webpack のファイルローダーまたは URL ローダーを使用して画像を処理できます。これらのツールは、画像の内容が変更されたときにキャッシュを自動的に更新できるように、画像を自動的にパッケージ化し、ハッシュされたファイル名を生成します。
4. レスポンシブ画像を使用する
レスポンシブ画像とは、ユーザーのデバイスの解像度に応じて、さまざまなサイズの画像を読み込むことを指します。これにより、高解像度デバイスに大きすぎる画像が読み込まれることがなくなり、帯域幅が節約され、ページの読み込み速度が向上します。
Vue では、srcset
属性と sizes
属性を使用してレスポンシブ画像を定義できます。 srcset
はさまざまな解像度の画像のパスと幅を指定し、sizes
は画像の表示サイズを指定します。
<template> <div> <img src="/static/imghw/default1.png" data-src="imageUrl" class="lazy" : :srcset="imageSrcset" :sizes="imageSizes" alt="示例图片"> </div> </template> <script> export default { data() { return { imageUrl: 'https://example.com/image.jpg', imageSrcset: 'https://example.com/image.jpg 1x, https://example.com/image@2x.jpg 2x', imageSizes: '(max-width: 600px) 100vw, 50vw' } } } </script>
デバイスの解像度と表示サイズに応じて、ブラウザは読み込む適切な画像を選択するため、ページのパフォーマンスが向上します。
要約すると、画像の遅延読み込み、画像の圧縮と結合、CDN アクセラレーションとキャッシュ戦略の使用、レスポンシブ画像やその他のテクノロジーの使用により、Vue での画像の読み込みとキャッシュを最適化し、Web サイトのパフォーマンスを向上させることができます。そしてユーザーエクスペリエンス。
(総単語数: 781 単語)
以上がVue で画像の読み込みとキャッシュを最適化する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









この記事では、vue.jsの州管理図書館であるVuexについて説明します。 コアの概念(状態、ゲッター、突然変異、行動)を詳述し、使用法を示し、より単純な代替案よりも大きなプロジェクトの利点を強調します。 デバッグと構造化

記事では、開発、統合、メンテナンスのベストプラクティスなど、カスタムVue.jsプラグインの作成と使用について説明します。

この記事では、高度なVueルーターのテクニックを調べます。 動的なルーティング(パラメーターを使用)、階層ナビゲーション用のネストされたルート、およびアクセスとデータフェッチを制御するためのルートガードをカバーします。 複雑なルート社を管理するためのベストプラクティス

この記事では、vue.jsでツリーシェーキングを使用して未使用のコードを削除し、ES6モジュールを使用したセットアップ、Webパック構成、および効果的な実装のためのベストプラクティスの詳細について説明します。

この記事では、さまざまなビルドターゲットにVue CLIを構成し、環境を切り替え、生産ビルドを最適化し、デバッグ用のソースマップを確保する方法について説明します。

VUE.JSは、コンポーネントベースのアーキテクチャ、パフォーマンスのための仮想DOM、およびリアルタイムのUI更新用のリアクティブデータバインディングでWeb開発を強化します。

この記事では、VUEを使用してDockerを展開するために説明し、コンテナ内のVUEアプリケーションのセットアップ、最適化、管理、およびパフォーマンス監視に焦点を当てています。

この記事では、ドキュメントの改善、質問への回答、コーディング、コンテンツの作成、イベントの作成、財務サポートなど、Vue.JSコミュニティに貢献するさまざまな方法について説明します。また、オープンソースプロジェに参加することもカバーしています
