How to implement data persistence using the vuex third-party package

How to implement data persistence using the vuex third-party package

Purpose:

Allow the state data managed in vuex to be stored locally at the same time. You can avoid the need for your own storage.

  • During the development process, user information (name, avatar, token) needs to be stored in vuex and locally.
  • If other modules also need to be persisted, they are also stored locally

1) First: We need to install a vuex plug-in vuex-persistedstate to support vuex state persistence.

npm i vuex-persistedstate

2) Then: create a modules file in the src/store folder, and create user.js and cart.js under modules

src/store/modules/user.js

// User module export default {
  namespaced: true,
  state () {
    return {
      // User information profile: {
        id: '',
        avatar: '',
        nickname: '',
        account: '',
        mobile: '',
        token: ''
      }
    }
  },
  mutations:
    // Modify user information, payload is the user information object setUser (state, payload) {
      state.profile = payload
    }
  }
}

3) Next: Import the user module in src/store/index.js.

import { createStore } from 'vuex'

import user from './modules/user'

export default createStore({
  modules:
    user
  }
})

4) Finally: Use the vuex-persistedstate plugin for persistence

import { createStore } from 'vuex'
+import createPersistedstate from 'vuex-persistedstate'

import user from './modules/user'

export default createStore({
  modules:
    user
  },
+ plugins: [
+ createPersistedstate({
+ key: 'erabbit-client-pc-store',
+ paths: ['user']
+ })
+ ]
})

Notice:

  • ===> By default, it is stored in localStorage
  • ===> key is the key name for storing data
  • ===> paths are the data stored in the state. If it is specific data under the module, the module name needs to be added, such as user.token
  • ===> Changes in local storage data can only be seen after the state is modified and triggered.

Summarize:

  • Implement data persistence in vuex based on third-party packages
  • The condition that triggers persistence is that the state changes

This is the end of this article about how to use the vuex third-party package to implement data persistence. For more relevant vuex data persistence content, please search for previous articles on 123WORDPRESS.COM or continue to browse the following related articles. I hope you will support 123WORDPRESS.COM in the future!

You may also be interested in:
  • Two implementation solutions for vuex data persistence
  • Ideas and codes for implementing Vuex data persistence
  • VUEX data persistence, example of re-acquisition after refresh
  • Vuex implements data state persistence
  • How to implement a simple vuex persistence tool
  • Detailed explanation of vuex persistence in practical application of vue

<<:  How to choose the right MySQL datetime type to store your time

>>:  Summary of MySQL database usage specifications

Recommend

Detailed explanation of the principle of js Proxy

Table of contents What is Proxy Mode? Introducing...

Understand the implementation of Nginx location matching in one article

Since the team is separating the front-end and ba...

Workerman writes the example code of mysql connection pool

First of all, you need to understand why you use ...

A brief analysis of kubernetes controllers and labels

Table of contents 01 Common controllers in k8s RC...

Detailed steps to build a file server in Windows Server 2012

The file server is one of the most commonly used ...

Implementation of Nginx domain name forwarding

Introduction to Nginx Nginx ("engine x"...

The latest popular script Autojs source code sharing

Today I will share with you a source code contain...

Linux installation MongoDB startup and common problem solving

MongoDB installation process and problem records ...

How to install and persist the postgresql database in docker

Skip the Docker installation steps 1. Pull the po...

Recommend 60 paging cases and good practices

<br />Structure and hierarchy reduce complex...

Detailed explanation of the solution to font blur when using transform in CSS3

This question is very strange, so I will go strai...

MySQL slow query and query reconstruction method record

Preface What is a slow query and how to optimize ...

HTML basics - CSS style sheets, style attributes, format and layout details

1. position : fixed Locked position (relative to ...