vue keepAlive キャッシュクリア問題事例の詳細な説明

vue keepAlive キャッシュクリア問題事例の詳細な説明

Keepalive は Vue プロジェクトでのキャッシュによく使用され、基本的な要件を満たすのに非常に便利です。しかし、異なる条件に応じて同じページをキャッシュするかしないかを決めるのは少し面倒です。

まず、問題点をリストアップします。

1.

<キープアライブv-if="xxx">
          <ルータービュー />
</キープアライブ>
<キープアライブv-else>
          <ルータービュー />
</キープアライブ>

インターネット上にはこのような方法がたくさんあります。この方法を使用すると、キャッシュされたアイテムを削除することはできません。実際には、この方法では、キャッシュされたページとキャッシュされていないページを2つのコンポーネントに分けて表示します。一般的にはそのように見えますが、実際には条件に基づいて異なる時間に異なるコンポーネントが表示されます。

2.

vm.$destroy()

既存のキャッシュを削除しようと考えるとき、ほとんどの人がまず考えるのはキャッシュを削除する方法だと思うので、私もキャッシュを削除する方法を探してみました。次に、vue の destroy メソッドが呼び出されます。それが破壊されたとき、それが実現されたことがわかり、とても嬉しくなります!キャッシュが削除されました〜それで、修正されたと思って、別のものを開発しに行きます。ある日突然気づくんですよね? ページがキャッシュされないのはなぜですか? 調査の結果、$destroy() を呼び出したページはキャッシュされなくなることが判明しました。 。

最終的に私の解決策は:

テンプレート
<keep-alive :include="keepAlive.join(',')">
         <ルータービュー />
</キープアライブ>

ヴュークス

キープアライブ: [
        '/joinManage/register/add-step1',
        '/joinManage/register/add-step2',
        '/joinManage/register/add-step3',
        '/joinManage/config/add-step1',
        '/joinManage/config/add-step2',
        '/joinManage/config/add-step3',
        '/joinManage/config/add-step4',
        '/joinManage/config/add-step5',
    ]、

必要なキャッシュ ページを動的に変更するには、include+vuex を使用します。 Include はコンポーネントの名前を受け入れます (ここでは名前を付けるのが面倒なので、パスを使用して名前を付けますが、実際にはパスは使用されません)

このように、特定のページをキャッシュする必要がある場合は、その名前を keepalive 配列に追加し、必要ない場合は対応するページを削除します。これにより、keepAliveのキャッシュ削除効果が実現されます。

これで、vue keepAlive キャッシュクリア問題の詳細なケースに関するこの記事は終了です。vue keepAlive キャッシュクリア問題のより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Vue プロジェクトで keepAlive を使用する手順 (超実践版)
  • Vue フロントエンド開発における keepAlive の使用方法の詳細な説明
  • Vue での keepAlive の使用例の詳細な説明
  • VueのkeepAliveコンポーネントの機能と使い方の詳細な説明
  • Vue で keepAlive を使用するときにキャッシュされない問題を解決する
  • Vue の keepAlive 設定が有効にならない場合の解決方法

<<:  nginx を使用した負荷分散モジュールの解釈

>>:  よく使われる3つのMySQLデータ型

推薦する

jQueryはテーブルのシームレスなスクロールを実現します

この記事の例では、テーブルのシームレスなスクロールを実現するためのjQueryの具体的なコードを参考...

Ubuntu 18.04 でソースコードから Odoo14 をインストールするチュートリアル

目次このシリーズの背景概要PostgreSQL データベースの準備ソースからインストール仮想環境の作...

MySQLクエリインターセプトの詳細な分析

目次1. クエリの最適化1. MySQLチューニングの概要2. 小さなテーブルが大きなテーブルを動か...

ログインインターフェースの使いやすさとセキュリティのバランスをとる方法

ウェブデザイナーでもUIデザイナーでも、ログインページや登録ページのデザインは必ず経験しなければなら...

Reactコンポーネントのライフサイクルの詳細な説明

目次1.ライフサイクルとは何か2. 読み込みプロセス1.コンストラクタ2. レンダリング3. コンポ...

nginxアクセス制御の実装例

高性能で軽量なウェブサービスソフトウェアであるNginxについて高い安定性 システムリソースの消費量...

シンプルなショッピングカートの最も完全なコード分析を実装する JavaScript (ES6 オブジェクト指向)

この記事では、シンプルなショッピングカートを実装するためのJavaScriptの具体的なコードを参考...

ミニプログラムカスタムコンポーネントの非効率的なグローバルスタイルの解決策

目次長すぎて読めないコンポーネントスタイルの分離デモテスト優先度ページの分離構成参考文献ネイティブ ...

ファイルが存在するかどうかを判断する JavaScript サンプルコード

1. ビジネスシナリオ最近はファイルのアップロードやダウンロードに関する開発をしています。ダウンロー...

forループ内のvarの問題の解決

序文var は ES5 における変数宣言方法です。var で変数を宣言するとループ変数がグローバル変...

JavaScript 構造化代入の詳細な説明

目次コンセプト配列の分割値を個別に宣言して割り当てるデフォルト値の構造化解除変数値の交換関数によって...

登録フォームのデザインルール

随分前に「Patterns for Sign Up & Ramp Up」を読み終えました。今...

Vue+Openlayerはmodifyを使用して要素の完全なコードを変更します

Vue+Openlayerはmodifyを使って要素を変更します。具体的な内容は以下のとおりです。 ...

Mysql GTID Mha 設定方法

Gtid + Mha + Binlog サーバー構成: 1: テスト環境OS: CentOS 6.5...

MySQL で誕生日から年齢を計算する複数の方法

以前はMySQLをあまり使用していなかったため、MySQLの機能にあまり詳しくありませんでした。この...