小編給大家分享一下vuex持久化插件如何解決瀏覽器刷新數(shù)據(jù)消失問題,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
成都創(chuàng)新互聯(lián)公司于2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元廬山做網(wǎng)站,已為上家服務(wù),為廬山各地企業(yè)和個人服務(wù),聯(lián)系電話:18980820575
插件原理
vuex有一個hook方法:store.subscribe((mutation, state) => {}) 每次在mutation方法執(zhí)行完之后都會調(diào)用這個回調(diào)函數(shù),返回執(zhí)行完畢之后的state
使用方法
安裝
npm install --save vuex-solidification
引入及配置
import Vue from 'vue' import Vuex from 'vuex' import count from './count/index.js'; import createPersistedState from 'vuex-solidification'; Vue.use(Vuex); const store = new Vuex.Store({ state: { count: { value: 0, num: 1 }, pos: 1 } plugins: [ // 默認(rèn)存儲所有state數(shù)據(jù)到localstorage createPersistedState() ] });
插件參數(shù)說明
createPersistedState({options}) : Function
options里面可以有:
key: String 存儲到localStorage, sessionStorage 中對象的key,默認(rèn)為vuex
local: Object 和 session: Object, 分別代表localStorage的配置和sessionStorage的配置
local 和 session 里面可以有: include: Array 和 exclude: Array
配置例子
createPersistedState({ local: { include: ['count.value'] } }) /* hook鉤子觸發(fā)之后,localstorage里面存儲的對象為: { count: { value: 0, } } */ createPersistedState({ local: { exclude: ['count.value'] } }) /* hook鉤子觸發(fā)之后,localstorage里面存儲的對象為: { count: { num: 1 }, pos: 1 } */ createPersistedState({ session: { include: ['count.value'] } }) /* hook鉤子觸發(fā)之后,sessionstorage里面存儲的對象為: { count: { value: 0, } } */ createPersistedState({ session: { exclude: ['count.value'] } }) /* hook鉤子觸發(fā)之后,sessionstorage里面存儲的對象為: { count: { num: 1 }, pos: 1 } */ createPersistedState({ session: { include: ['count'] }, local: { include: ['pos'] } }) /* hook鉤子觸發(fā)之后, sessionstorage里面存儲的對象為: { count: { value: 0, num: 1 }, } sessionstorage里面存儲的對象為: { pos: 0 } */
以上是“vuex持久化插件如何解決瀏覽器刷新數(shù)據(jù)消失問題”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!