最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue如何實現(xiàn)利用vuex永久儲存數(shù)據(jù)

 更新時間:2023年04月17日 09:51:14   作者:玫瑰花開一片一片  
這篇文章主要介紹了Vue如何實現(xiàn)利用vuex永久儲存數(shù)據(jù)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

Vue用vuex永久儲存數(shù)據(jù)

首先需要在 vue項目上  安裝 vuex 與 vuex-persistedstate 

npm i vuex?
npm install --save vuex-persistedstate

1. 在 src 目錄下 創(chuàng)建 "store" 文件夾

2. 在store 文件夾下 創(chuàng)建 自定義 " index.js" 文件

3.在 index.js 中 import  引入 vue , vuex , persistedstate  并且使用use 方法是用 Vuex

4. 在store對象內(nèi)  plugins: [createPersistedState()],  使用 persistedstate 組件

5.把store文件夾 引入  main.js 中

最后  可以用 以下方法 訪問到數(shù)據(jù) , console.log(this.$store)  看下就明白了

this.$store.state

this.$store.commit('函數(shù)名','需要傳的參數(shù)')

import Vue from 'vue'
import Vuex from 'vuex'
import createPersistedState from 'vuex-persistedstate'
Vue.use(Vuex)
 
const store = new Vuex.Store({
  plugins: [createPersistedState()],
  state: {
    isLoading: false,
    num: ['1']
  },
  mutations: {
    loading (state, str) {
      let list = []
      list.push(str)
      state.num = [...state.num, ...list]
      console.log('ok')
    }
  }
})
export default store

基于vuex的數(shù)據(jù)持久化問題

存在問題

前端在使用vuex存儲數(shù)據(jù)的時候,一旦頁面刷新,所有之前存儲的數(shù)據(jù)就會丟失。這是因為js代碼運行在內(nèi)存中,代碼在運行時,所有的變量和函數(shù)都是保存在內(nèi)存中的,因此在刷新時,之前申請的內(nèi)存會被釋放,js腳本會被重新加載,變量重新賦值。

此問題映射在本項目上的體現(xiàn)

為了更直觀方便的處理數(shù)據(jù),一方面在數(shù)據(jù)庫中設置了服務類型表,另一方面在前端視圖層處理時,將服務列表里的類型數(shù)據(jù)都統(tǒng)計一遍,存放在vuex的state中。

為了提高本項目的執(zhí)行效率,我在vuex中設置了一個flag布爾變量,初值為true,保證只有在第一次掛載組件時才向后臺發(fā)出請求,獲取所有服務信息,并且修改flag值為false。

但是這樣就會導致一個問題:下一次再重新登陸的時候,vuex數(shù)據(jù)刷新,但是不會再請求后臺數(shù)據(jù)了,因此得不到后臺的數(shù)據(jù)。

然后我又找了一個辦法,當每次登陸的時候,把vuex中的flag值重新設置為true,這樣雖然解決了之前登陸之后沒有數(shù)據(jù)顯示的問題,但是同時也造成了另一個問題:數(shù)據(jù)累加,登陸一次所有之前的服務類型數(shù)據(jù)就會累加一次

解決方法:使用vuex的數(shù)據(jù)持久化

實現(xiàn)方式:

1.利用瀏覽器的本地存儲localStorage和sessionStorage

  • vuex的state在localStorage或sessionStorage取值
  • 在mutations里面,定義的方法對vuex的狀態(tài)操作的同時,對存儲也做對應的操作

2.利用vue-presistedstate插件

  • 原理和方法1一樣,也是結合了瀏覽器的本地存儲localStorage和sessionStorage,只不過是統(tǒng)一的配置,不需要每次都手寫存儲方法。
  • 安裝方式;npm install vuex-persistedstate --save
  • 引入:在store下的index.js中引入,然后使用插件plugins

本項目為了高效方便,采用了第二種下載插件的方式。

這樣就實現(xiàn)了vuex中數(shù)據(jù)持久化的效果,之前存儲的數(shù)據(jù)再刷新和退出之后就不會丟失了。

總結

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。 

相關文章

  • Vue3+vantUI3時間組件封裝過程支持選擇年以及年月日時分秒

    Vue3+vantUI3時間組件封裝過程支持選擇年以及年月日時分秒

    這篇文章主要介紹了Vue3+vantUI3時間組件封裝過程支持選擇年以及年月日時分秒,本文通過實例代碼給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2024-07-07
  • Vuejs開發(fā)環(huán)境搭建及熱更新【推薦】

    Vuejs開發(fā)環(huán)境搭建及熱更新【推薦】

    Vue.js是目前很火的一個前端框架,采用MVVM模式設計,它是以數(shù)據(jù)驅(qū)動和組件化的思想構建的。本文重點給大家介紹Vuejs開發(fā)環(huán)境搭建及熱更新的相關知識,需要的朋友參考下吧
    2018-09-09
  • vue 實現(xiàn)tab切換保持數(shù)據(jù)狀態(tài)

    vue 實現(xiàn)tab切換保持數(shù)據(jù)狀態(tài)

    這篇文章主要介紹了vue 實現(xiàn)tab切換保持數(shù)據(jù)狀態(tài),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • el-date-picker日期選擇限制范圍的實例代碼

    el-date-picker日期選擇限制范圍的實例代碼

    這篇文章主要介紹了el-date-picker日期選擇限制范圍,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-09-09
  • Vue解析剪切板圖片并實現(xiàn)發(fā)送功能

    Vue解析剪切板圖片并實現(xiàn)發(fā)送功能

    這篇文章主要介紹了Vue解析剪切板圖片并實現(xiàn)發(fā)送功能,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • 詳解Vue的列表渲染

    詳解Vue的列表渲染

    這篇文章主要為大家介紹了Vue的列表渲染,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-11-11
  • vue-cli3項目打包后自動化部署到服務器的方法

    vue-cli3項目打包后自動化部署到服務器的方法

    這篇文章主要介紹了vue-cli3項目打包后自動化部署到服務器的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • vue.js實現(xiàn)帶日期星期的數(shù)字時鐘功能示例

    vue.js實現(xiàn)帶日期星期的數(shù)字時鐘功能示例

    這篇文章主要介紹了vue.js實現(xiàn)帶日期星期的數(shù)字時鐘功能,涉及vue.js基于定時器的日期時間運算與數(shù)值操作相關使用技巧,需要的朋友可以參考下
    2018-08-08
  • 通過vue如何設置header

    通過vue如何設置header

    這篇文章主要介紹了通過vue如何設置header,每個項目都有頭部但是內(nèi)容不一樣;這種情況我們可以考慮在app.vue中創(chuàng)建公共頭部,那么怎么配置公共頭部header,下面小編通過實例代碼詳細講解,需要的朋友可以參考下
    2023-02-02
  • setup+ref+reactive實現(xiàn)vue3響應式功能

    setup+ref+reactive實現(xiàn)vue3響應式功能

    這篇文章介紹了通過setup+ref+reactive實現(xiàn)vue3響應式功能,文中通過示例代碼介紹的非常詳細。對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-11-11

最新評論

德令哈市| 贺兰县| 永顺县| 思南县| 武冈市| 莆田市| 临夏县| 资源县| 红原县| 司法| 安陆市| 台前县| 渝北区| 西贡区| 抚宁县| 阳城县| 西林县| 贵南县| 西乌| 布尔津县| 永州市| 邯郸县| 班戈县| 日喀则市| 广汉市| 广宁县| 商洛市| 霍邱县| 淄博市| 沙田区| 永城市| 卢龙县| 洪湖市| 墨玉县| 长沙市| 静海县| 东明县| 阿图什市| 遂川县| 红河县| 蒙山县|