欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解決VUEX刷新的時候出現(xiàn)數(shù)據(jù)消失

 更新時間:2017年07月03日 15:17:15   作者:請叫我流川楓好嗎  
這篇文章主要介紹了解決VUEX刷新的時候出現(xiàn)數(shù)據(jù)消失,具有一定的參考價值,感興趣的小伙伴們可以參考一下

通常,我們在使用vue編寫頁面時,會需要使用vuex在組件間傳遞(或者說共同響應(yīng))同一個數(shù)據(jù)的變化。例如:用戶的登錄信息。

下面,我們使用傳遞用戶登錄信息的例子來一步步解決這個問題。

首先,我們的第一個問題是:我在一個組件(例如登錄組件頁面)中登錄了后,其它頁面要怎么獲取和響應(yīng)這個變化?(就是這么小白,/(ㄒoㄒ)/~~)

這個答案就是使用vuex啦,在中文版的文檔中有這樣一句話:

而這里的計算屬性就是我們的偉大的computed屬性啦~

(至于前面的通過mutation之類的把數(shù)據(jù)存入vuex中的過程就省略了,大家上網(wǎng)搜一下例子一大堆,切忌做伸手黨哦~)

至于用在我們的用戶登錄的例子中就像是下面這樣:

這樣我們就可以在頁面根據(jù)用戶信息響應(yīng)式地顯示內(nèi)容了。

那么,我們的第二個問題來了:我是獲取到了vuex中的用戶信息,但是我一刷新就沒有了??!怎么辦??在線等!十萬火急??!

這個答案就是使用localStorage啦。(了解過html 5的同學(xué)應(yīng)該都知道它,這里我就不科普了。)

一開始我雖然知道可以用localStorage,但是對于使用的邏輯有點亂,所以在這里記一下。

1、在vuex獲取到用戶信息時(例:state.user_id = user_info.user_id),同時把這個信息存入localStorage(Lockr.set('user_id', state.user_id) 這個Lockr是我用了一個叫Lockr的東西,其實它就是localStorage而已,關(guān)于它詳細(xì)的請看https://github.com/tsironis/lockr);

2、我們定義一個mutation方法,再次把數(shù)據(jù)從localStorage傳給state;

3、我們的問題發(fā)生在頁面刷新時,可能很多同學(xué)就會去想在監(jiān)聽頁面刷新事件時觸發(fā)上面第2步的那個方法。其實不用這么麻煩,在computed屬性時,只要我們判斷一下用戶信息是否為空,為空時調(diào)用第2步的那個方法就好了,然后我們把這個state return給那個響應(yīng)屬性就好了;

4、至于為什么這么麻煩在state和localStorage中傳來傳去,是因為state的值刷新后會沒了,而localStorage的值不能響應(yīng)式地變化(Vue 僅可以對其管理的數(shù)據(jù)做響應(yīng)式處理,可以理解為 data 中的數(shù)據(jù),localStorage 并不在 Vue 的管理下,自然不會有響應(yīng)特性);

下面直接上computed處的代碼:

以上就是使用localStorage解決vuex的state的值在刷新之后沒有了這個問題的方法。

方法二:

在mount里面commit一次

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Vue3?Composition?API優(yōu)雅封裝第三方組件實例

    Vue3?Composition?API優(yōu)雅封裝第三方組件實例

    這篇文章主要為大家介紹了Vue3?Composition?API優(yōu)雅封裝第三方組件實例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • 利用vue.js實現(xiàn)被選中狀態(tài)的改變方法

    利用vue.js實現(xiàn)被選中狀態(tài)的改變方法

    下面小編就為大家分享一篇利用vue.js實現(xiàn)被選中狀態(tài)的改變方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • vue日常開發(fā)基礎(chǔ)Axios網(wǎng)絡(luò)庫封裝

    vue日常開發(fā)基礎(chǔ)Axios網(wǎng)絡(luò)庫封裝

    這篇文章主要為大家介紹了vue日常開發(fā)基礎(chǔ)Axios網(wǎng)絡(luò)庫封裝示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-08-08
  • 基于Vue實現(xiàn)HTML轉(zhuǎn)PDF并導(dǎo)出

    基于Vue實現(xiàn)HTML轉(zhuǎn)PDF并導(dǎo)出

    這篇文章主要為大家介紹了三種方法,可以實現(xiàn)將HTML頁面轉(zhuǎn)為PDF并實現(xiàn)下載。文中的示例代碼講解詳細(xì),感興趣的小伙伴可以學(xué)習(xí)一下
    2022-04-04
  • vue.js做一個簡單的編輯菜譜功能

    vue.js做一個簡單的編輯菜譜功能

    本文通過實例代碼給大家一個簡單的基于vue.js實現(xiàn)的編輯菜譜功能,代碼簡答易懂,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2018-05-05
  • VuePress使用Algolia實現(xiàn)全文搜索

    VuePress使用Algolia實現(xiàn)全文搜索

    這篇文章主要為大家介紹了VuePress使用Algolia實現(xiàn)全文搜索示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • vue打包時不刪除dist里的原有文件配置方法

    vue打包時不刪除dist里的原有文件配置方法

    這篇文章主要為大家介紹了vue打包時不刪除dist里的原有文件配置方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11
  • vue watch監(jiān)聽對象及對應(yīng)值的變化詳解

    vue watch監(jiān)聽對象及對應(yīng)值的變化詳解

    下面小編就為大家分享一篇vue watch監(jiān)聽對象及對應(yīng)值的變化詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • Vue中的函數(shù)同步執(zhí)行導(dǎo)致的數(shù)據(jù)獲取失敗問題處理辦法

    Vue中的函數(shù)同步執(zhí)行導(dǎo)致的數(shù)據(jù)獲取失敗問題處理辦法

    Vue中的mount中有兩個函數(shù),第一個函數(shù)執(zhí)行完后給data中的userInfo賦值,但是第二個函數(shù)獲取userInfo時是空值,這種情況可能是因為第二個函數(shù)在獲取 userInfo 時發(fā)生在第一個函數(shù)執(zhí)行完之前,所以本文給大家介紹了Vue中的函數(shù)同步執(zhí)行導(dǎo)致的數(shù)據(jù)獲取失敗問題處理辦法
    2024-08-08
  • 基于vue 動態(tài)菜單 刷新空白問題的解決

    基于vue 動態(tài)菜單 刷新空白問題的解決

    這篇文章主要介紹了基于vue 動態(tài)菜單 刷新空白問題的解決,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08

最新評論