vuexサードパーティパッケージを使用してデータの永続性を実装する方法

vuexサードパーティパッケージを使用してデータの永続性を実装する方法

目的:

vuex で管理されている状態データを同時にローカルに保存できるようにします。独自のストレージを用意する必要がなくなります。

  • 開発プロセス中、ユーザー情報 (名前、アバター、トークン) を vuex とローカルに保存する必要があります。
  • 他のモジュールも保存する必要がある場合は、それらもローカルに保存されます。

1) まず、vuex の状態の永続性をサポートするために、vuex プラグイン vuex-persistedstate をインストールする必要があります。

npm と vuex-persistedstate

2) 次に、src/store フォルダにモジュール ファイルを作成し、モジュールの下に user.js と cart.js を作成します。

src/store/modules/user.js

// ユーザーモジュールエクスポートデフォルト{
  名前空間: true、
  州 () {
    戻る {
      // ユーザー情報プロファイル: {
        id: ''、
        アバター: ''、
        ニックネーム: ''、
        アカウント: ''、
        携帯: ''、
        トークン: ''
      }
    }
  },
  突然変異:
    // ユーザー情報を変更します。ペイロードはユーザー情報オブジェクトです。setUser (state, payload) {
      state.profile = ペイロード
    }
  }
}

3) 次に、src/store/index.js にユーザー モジュールをインポートします。

'vuex' から {createStore} をインポートします。

'./modules/user' からユーザーをインポートします

エクスポートデフォルトcreateStore({
  モジュール:
    ユーザー
  }
})

4) 最後に: 永続性のためにvuex-persistedstateプラグインを使用する

'vuex' から {createStore} をインポートします。
+ 'vuex-persistedstate' から createPersistedstate をインポートします

'./modules/user' からユーザーをインポートします

エクスポートデフォルトcreateStore({
  モジュール:
    ユーザー
  },
+ プラグイン: [
+ 永続状態を作成します({
+ キー: 'erabbit-client-pc-store',
+ パス: ['ユーザー']
+ })
+ ]
})

知らせ:

  • ===> デフォルトではlocalStorageに保存されます
  • ===> キーはデータを格納するためのキー名です
  • ===> パスは状態に保存されるデータです。モジュール下の特定のデータの場合は、user.token のようにモジュール名を追加する必要があります。
  • ===> ローカル ストレージ データの変更は、状態が変更されてトリガーされた後にのみ表示されます。

要約:

  • サードパーティのパッケージに基づいてvuexでデータの永続性を実装する
  • 持続性を誘発する条件は、状態が変化することである

これで、vuex サードパーティ パッケージを使用してデータ永続性を実装する方法についての記事は終了です。vuex データ永続性に関するより関連性の高いコンテンツについては、123WORDPRESS.COM で以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • vuex データの永続化のための 2 つの実装ソリューション
  • Vuex データの永続性を実装するためのアイデアとコード
  • VUEX データの永続性、リフレッシュ後の再取得の例
  • Vuexはデータ状態の永続性を実装します
  • シンプルなvuex永続化ツールを実装する方法
  • vueの実践的な応用におけるvuexの永続性の詳細な説明

<<:  最小限の展開で CentOS8 に OpenStack Ussuri をインストールする方法の詳細なチュートリアル

>>:  MySQLデータベースの使用仕様の概要

推薦する

js を使用して XML オンライン エディターを作成する例

目次序文オンラインXMLエディタの必要性テクノロジー事前調査ビジュアルプログラミングVSCODEプラ...

コンテナDockerCommitを介してイメージを送信し、DockerPushでイメージをプッシュします。

ローカルでコンテナを作成した後、このコンテナに基づいてローカル イメージを作成し、このイメージを D...

XMLとCSSスタイルの組み合わせ

学生.xml <?xml バージョン="1.0" エンコーディング=&qu...

友達やグループを見つけるためのJavaScriptのLayim

現在、layuiの関係者はlayim友達検索ページの構造とスタイルを提供していません。私は個人的に非...

CSS 垂直センタリングの代替実装コードの詳細な説明(非従来型)

序文ご存知のとおり、「CSS で要素を垂直方向に中央揃えするにはどうすればよいか」という質問は、すで...

HTMLは角丸四角形を簡単に実装します

質問: div+css と配置を使用して角丸四角形を実現するにはどうすればよいですか?ソリューション...

Tomcat9 のダウンロード、インストール、設定 + Eclipse への統合に関する詳細なチュートリアル

トムキャット公式サイトtomcatはローカルサーバーと同等であり、Webページを開くことができます設...

WeChatミニプログラムでトークンの有効期限を処理する方法

目次まず結論から質問解決Promiseを使用してコールバック関数をカプセル化する要約するまず結論から...

MySQL 8.0 のデフォルトのデータディレクトリを変更する (設定なしの簡単な操作)

使用シナリオ: Alibaba Cloud を使用しており、データディスクを別途購入しました (大容...

MySQL データベースで UTF-8 エンコードを設定する方法

/etc/my.cnf または /etc/mysql/my.cnf ファイルを変更する [クライアン...

SQL 最適化チュートリアル: IN クエリと RANGE クエリ

序文「High Performance MySQL」では、インデックスでは範囲フィールドの後の部分が...

MySQL の 3 つの Binlog 形式の概要と分析

1つ。 Mysql Binlog フォーマットの紹介 Mysql binlog ログには、State...

Ubuntu 16.04/18.04 に Pycharm と Ipython をインストールするチュートリアル

Ubuntu 18.04の場合1. sudo apt install python 。コマンドライン...

Linuxターミナルでファイルを作成する2つの一般的な方法を簡単に理解する

mkdir コマンドを使用して新しいディレクトリを作成できることは誰もが知っていますが、多くの場合、...