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データ型

推薦する

mysql5.7.18.zip インストール不要版設定チュートリアル(Windows)

これは私が以前使用した mysql5.7.18.zip のインストール チュートリアルです。まずこれ...

Windows Server 2008 64ビット MySQL5.6 インストール不要版 設定方法図

1 公式ウェブサイトから MySQL 5.6 バージョンの圧縮パッケージmysql-5.6.36-w...

Linux でユーザーを完全に削除する 2 つの方法

Linux 操作実験環境: Centos7 仮想マシンまず、共通ユーザーgubeiqingを作成しま...

Mysqlの日付と時刻関数を扱う記事

目次序文1. 現在の時刻を取得する1.1 現在の日付と時刻を返す1.2 現在の日付を取得する1.3 ...

設定ファイルを書いてMyBatisを簡単に使う方法

設定ファイルを書いてMyBatisを簡単に使う方法マイバティス3.xここでは MyBatis につい...

MySQL 5.7.17 のインストールと使用方法のグラフィックチュートリアル

MySQL は、スウェーデンの会社 MySQL AB によって開発され、現在は Oracle が所有...

HTMLでは、全体的なスタイルとレイアウトを崩さずに、部分的に強制スクロールバーを使用できます。

まずはエフェクト画像を投稿します:全体的なスタイルとレイアウトが崩れないように、スクロール バーがロ...

MySQLクエリ書き換えプラグインの使用

クエリ書き換えプラグインMySQL 5.7.6 以降、MySQL Server は、サーバーが実行す...

MySQL 8.0.20 インストール チュートリアル (画像とテキスト付き) (Windows 64 ビット)

1: mysql公式サイトからダウンロードhttps://dev.mysql.com/downlo...

Robots.txtの詳細な紹介

robots.txt の基本的な紹介Robots.txt はプレーンテキスト ファイルであり、Web...

CentOS7 systemdにカスタムシステムサービスを追加する方法

システムド: CentOS 7のサービスsystemctlスクリプトは、/usr/lib/syste...

ウェブデザインの教育または学習プログラム

セクションコース内容営業時間1 ウェブデザインの概要2 2 HTML 基本タグとフォーマットタグ 2...

Vue は Echarts をインポートして折れ線グラフを実現します

この記事では、VueでEchartsをインポートして線散布図を実現する具体的なコードを参考までに共有...

CSSフロートの特性についての簡単な説明

この記事では、CSS フロートの特徴を紹介します。皆さんと共有し、自分用のメモとして残したいと思いま...