vuex數(shù)據(jù)狀態(tài)持久化

vuex可以進(jìn)行全局的狀態(tài)管理笑撞,但刷新后刷新后數(shù)據(jù)會(huì)消失,這是我們不愿意看到的。怎么解決呢抡蛙,我們可以結(jié)合本地存儲(chǔ)做到數(shù)據(jù)持久化,也可以通過插件-vuex-persistedstate磷杏。

1通過 vuex-persistedstate這個(gè)插件溜畅,來實(shí)現(xiàn)將數(shù)據(jù)存儲(chǔ)到本地

npm install vuex-persistedstate
1
之后使用這個(gè)插件在Store中

import createPersistedState from 'vuex-persistedstate'
const store = new Vuex.Store({
modules: {    
    cart,   //以模塊的方式導(dǎo)出,這是專屬于購物車的极祸,可以再有一個(gè)共享登陸狀態(tài)的慈格,這樣便于分類
  },
  plugins: [createPersistedState()]  //加上這個(gè)就可以了
})

插件的原理其實(shí)也是結(jié)合了存儲(chǔ)方式,只是統(tǒng)一的配置就不需要手動(dòng)每次都寫存儲(chǔ)方法
默認(rèn)存儲(chǔ)到localStorage

想要存儲(chǔ)到sessionStorage怠晴,配置如下

import createPersistedState from "vuex-persistedstate"
const store = new Vuex.Store({
  // ...
  plugins: [createPersistedState({
      storage: window.sessionStorage
  })]
})

想使用cookie同理
默認(rèn)持久化所有state

指定需要持久化的state,配置如下

import createPersistedState from "vuex-persistedstate"
const store = new Vuex.Store({
  // ...
  plugins: [createPersistedState({
      storage: window.sessionStorage,
      reducer(val) {
          return {
          // 只儲(chǔ)存state中的assessmentData
          assessmentData: val.assessmentData
        }
     }
  })]

vuex引用多個(gè)插件的寫法
譬如:vuex提示的插件和持久化的插件一起使用,配置如下

import createPersistedState from "vuex-persistedstate"
import createLogger from 'vuex/dist/logger'
// 判斷環(huán)境 vuex提示生產(chǎn)環(huán)境中不使用
const debug = process.env.NODE_ENV !== 'production'
const createPersisted = createPersistedState({
  storage: window.sessionStorage
})
export default new Vuex.Store({
 // ...
  plugins: debug ? [createLogger(), createPersisted] : [createPersisted]
})
//**注意:plugins要是一個(gè)一維數(shù)組不然會(huì)解析錯(cuò)誤

2手動(dòng)利用HTML5的本地存儲(chǔ)

vuex的state在localStorage或sessionStorage或其它存儲(chǔ)方式中取值
在mutations,定義的方法里對(duì)vuex的狀態(tài)操作的同時(shí)對(duì)存儲(chǔ)也做對(duì)應(yīng)的操作浴捆。
這樣state就會(huì)和存儲(chǔ)一起存在并且與vuex同步

最直觀的就是蒜田,手動(dòng)寫比較麻煩。

原文鏈接:https://blog.csdn.net/qq_30841657/article/details/97099274

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末选泻,一起剝皮案震驚了整個(gè)濱河市冲粤,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌页眯,老刑警劉巖梯捕,帶你破解...
    沈念sama閱讀 222,590評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異窝撵,居然都是意外死亡傀顾,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,157評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門碌奉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來短曾,“玉大人,你說我怎么就攤上這事赐劣〖倒眨” “怎么了?”我有些...
    開封第一講書人閱讀 169,301評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵魁兼,是天一觀的道長(zhǎng)婉徘。 經(jīng)常有香客問我,道長(zhǎng)咐汞,這世上最難降的妖魔是什么判哥? 我笑而不...
    開封第一講書人閱讀 60,078評(píng)論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮碉考,結(jié)果婚禮上塌计,老公的妹妹穿的比我還像新娘。我一直安慰自己侯谁,他們只是感情好锌仅,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,082評(píng)論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著墙贱,像睡著了一般热芹。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上惨撇,一...
    開封第一講書人閱讀 52,682評(píng)論 1 312
  • 那天伊脓,我揣著相機(jī)與錄音,去河邊找鬼魁衙。 笑死报腔,一個(gè)胖子當(dāng)著我的面吹牛株搔,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播纯蛾,決...
    沈念sama閱讀 41,155評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼纤房,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了翻诉?” 一聲冷哼從身側(cè)響起炮姨,我...
    開封第一講書人閱讀 40,098評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎碰煌,沒想到半個(gè)月后舒岸,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,638評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡芦圾,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,701評(píng)論 3 342
  • 正文 我和宋清朗相戀三年吁津,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片堕扶。...
    茶點(diǎn)故事閱讀 40,852評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖梭依,靈堂內(nèi)的尸體忽然破棺而出稍算,到底是詐尸還是另有隱情,我是刑警寧澤役拴,帶...
    沈念sama閱讀 36,520評(píng)論 5 351
  • 正文 年R本政府宣布糊探,位于F島的核電站,受9級(jí)特大地震影響河闰,放射性物質(zhì)發(fā)生泄漏科平。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,181評(píng)論 3 335
  • 文/蒙蒙 一姜性、第九天 我趴在偏房一處隱蔽的房頂上張望瞪慧。 院中可真熱鬧,春花似錦部念、人聲如沸弃酌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,674評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽妓湘。三九已至,卻和暖如春乌询,著一層夾襖步出監(jiān)牢的瞬間榜贴,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,788評(píng)論 1 274
  • 我被黑心中介騙來泰國打工妹田, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留唬党,地道東北人鹃共。 一個(gè)月前我還...
    沈念sama閱讀 49,279評(píng)論 3 379
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像初嘹,于是被迫代替她去往敵國和親及汉。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,851評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容