Vuex的插件vuex-persistedstate數(shù)據(jù)持久化存儲操作
一、安裝插件
yarn add vuex-persistedstate // 或 npm install --save vuex-persistedstate
二、使用方法
用sessionStorage緩存上面state的數(shù)據(jù),key名為store
import Vue from 'vue'
import Vuex from 'vuex'
// 引入插件
import createPersistedState from "vuex-persistedstate";
Vue.use(Vuex)
const state = {};
const mutations = {};
const actions = {};
const store = new Vuex.Store({
state,
mutations,
actions,
/* vuex數(shù)據(jù)持久化配置 */
plugins: [
createPersistedState({
// 存儲方式:localStorage、sessionStorage、cookies 默認(rèn): localStorage
storage: window.sessionStorage,
// 存儲的 key 的key值
key: "store",
render(state) {
// 要存儲的數(shù)據(jù):本項目采用es6擴展運算符的方式存儲了state中所有的數(shù)據(jù)
return { ...state };
}
})
]
});
export default store;三、緩存State下的部分?jǐn)?shù)據(jù)
import Vue from 'vue'
import Vuex from 'vuex'
// 引入插件
import createPersistedState from "vuex-persistedstate";
Vue.use(Vuex)
const state = () => {
return {
token: '',
uid: ''
}
}
const store = new Vuex.Store({
// ...
plugins: [createPersistedState({
storage: window.sessionStorage,
reducer(val) { // val就是上面的state
return {
// 只儲存state中的token,而不會緩存uid
token: val.token
}
}
})]
})四、緩存Vuex多個模塊下的指定某個模塊的state,通過修改path配置來實現(xiàn)
/* user-module */
export const user = {
state: {
token: '',
role: ''
}
}
/* profile-module */
export const profile = {
state: {
name: '',
company: ''
}
}
/* modules目錄下的index.js */
import user from './user'
import profile from './profile'
export default {
user,
profile
}
/* store.js */
import modules from './modules'
let store = new Vuex.Store({
modules,
plugins: [
createPersistedState({
key: 'zdao',
paths: ['user'] // 這里便只會緩存user下的state值
})
]
})到此這篇關(guān)于Vuex的插件vuex-persistedstate數(shù)據(jù)持久化存儲的文章就介紹到這了,更多相關(guān)vuex-persistedstate數(shù)據(jù)持久化存儲內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
關(guān)于iview按需引用后使用this.$Modal報錯的解決
這篇文章主要介紹了關(guān)于iview按需引用后使用this.$Modal報錯的解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-09-09
在Nginx上部署前端Vue項目的詳細(xì)步驟(超級簡單!)
這篇文章主要介紹了在Nginx上部署前端Vue項目的詳細(xì)步驟,Nginx是一款高效的HTTP和反向代理Web服務(wù)器,作為開源軟件,Nginx以其高性能、可擴展性和靈活性廣泛應(yīng)用于Web架構(gòu)中,文中將步驟介紹的非常詳細(xì),需要的朋友可以參考下2024-10-10
nginx如何配置vue項目history的路由模式(非根目錄)
這篇文章主要介紹了nginx如何配置vue項目history的路由模式(非根目錄),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-10-10
Vue項目總結(jié)之webpack常規(guī)打包優(yōu)化方案
這篇文章主要介紹了vue項目總結(jié)之webpack常規(guī)打包優(yōu)化方案,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-06-06
Vue3+TS項目中eslint、prettier安裝配置詳細(xì)指南
為了更好的統(tǒng)一項目的代碼風(fēng)格,因此在編寫時就可以使用eslint+prettier,它們不僅能方便代碼編寫,還能避免不必要的錯誤,讓代碼變得更加嚴(yán)謹(jǐn),這篇文章主要給大家介紹了關(guān)于Vue3+TS項目中eslint、prettier安裝配置的相關(guān)資料,需要的朋友可以參考下2024-07-07
Vue實現(xiàn)當(dāng)前頁面刷新的4種方法舉例
我們在開發(fā)vue的頁面的時候,有時候會遇到需要刷新當(dāng)前頁面功能,但是vue框架自帶的router是不支持刷新當(dāng)前頁面功能,下面這篇文章主要給大家介紹了關(guān)于Vue實現(xiàn)當(dāng)前頁面刷新的4種方法,需要的朋友可以參考下2023-04-04
element-ui中select組件綁定值改變,觸發(fā)change事件方法
今天小編就為大家分享一篇element-ui中select組件綁定值改變,觸發(fā)change事件方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-08-08

