亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Vuex 和瀏覽器緩存

Vuex 和瀏覽器緩存

紅顏莎娜 2018-08-30 22:14:49
Vuex 的主要作用是用來 共享和管理數據,那為什么不直接使用瀏覽器緩存呢?Vuex和瀏覽器緩存策略的根本區別是什么?Vuex state 倉庫中的數據流是單向同步的,那為什么可以在action 中進行異步操作?         比如在action 中發起請求,請求成功后再發起commit?請求各位大神解析?。?
查看完整描述

2 回答

?
拉莫斯之舞

TA貢獻1820條經驗 獲得超10個贊

首先,要區別 vuex 和 瀏覽器緩存 的區別。

 vuex 的設計是將數據存在一個對象樹的變量中,我們的應用(vue應用)從這個變量中取數據,然后供應用使用,當將當前頁面關閉, vuex 中的變量會隨著消失,重新打開頁面的時候,需要重新生成。
而,瀏覽器緩存(cookie,localstorage等)是將數據存到瀏覽器的某個地方,關閉頁面,不會自動清空這些數據,當再次打開這個頁面時,還是能取到之前存在瀏覽器上的數據(cookie,localstorage等)。
要使用 vuex 還是使用瀏覽器緩存,要看具體的業務場景。比如:像用戶校驗的 token 就可以存在 cookie 中,因為用戶再次登錄的時候能用到。而像用戶的權限數據,這些是有一定安全性考慮,且不同用戶的權限不同,放在 vuex中更合理,用戶退出時,自動銷毀。

其次,vuex 中的 state 是單向的,也可以異步操作,這兩個沒有沖突。

 vuex 中的 state 的設計思路是保證數據的一致性和連續性,而讓 state 中的值只能通過 action 來發起commit,進而改變 state 中的值。
而,action 中是 同步 還是 異步,都是單向地改變 state 中的值。


查看完整回答
反對 回復 2018-09-08
  • 2 回答
  • 0 關注
  • 1556 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號