vuex的設計是將資料存在一個物件樹的變數中,我們的應用(vue應用)從這個變數中取資料,然後供應用使用,當將當前頁面關閉, vuex 中的變數會隨著消失,重新開啟頁面的時候,需要重新生成。vuex是狀態管理,是為了解決跨元件之間資料共享問題的,一個元件的資料變化會對映到使用這個資料的其他元件當中。如果重新整理頁面,之前儲存的vuex資料全部都會被初始化掉。
瀏覽器快取(cookie,localstorage等)是將資料存到瀏覽器的某個地方,關閉頁面,不會自動清空這些資料,當再次開啟這個頁面時,還是能取到之前存在瀏覽器上的資料(cookie,localstorage等)。
要使用 vuex 還是使用瀏覽器快取,要看具體的業務場景。比如:像使用者校驗的 token 就可以存在 cookie 中,因為使用者再次登入的時候能用到。而像使用者的許可權資料,這些是有一定安全性考慮,且不同使用者的許可權不同,放在 vuex 中更合理,使用者退出時,自動銷燬。