亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Vue中的Strorage本地化存儲怎么實現

發布時間:2022-04-29 17:19:59 來源:億速云 閱讀:249 作者:iii 欄目:開發技術

本文小編為大家詳細介紹“Vue中的Strorage本地化存儲怎么實現”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Vue中的Strorage本地化存儲怎么實現”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

Storage本地化存儲

存儲優點:

  • 空間更大:cookie為4kb,storage為5mb

  • 節省網絡流量:不會發送數據到服務器,直接存儲在本地

  • 快速顯示:存儲在本地的數據+瀏覽器本地的緩存,比從服務器獲取數據快得多

localStorage

  • 會永久存儲會話數據,除非手動刪除或者removeItem

  • 在所有的同源的窗口中存儲的數據是共享的

  • 只能存儲字符串類型的數據,復雜的對象數據必須借助JSON的stringfy和parse處理

sessionStorage

  • 在一個會話期內,存儲會話數據,當關閉當前的會話頁面(瀏覽器頁面)時,數據就刪除了

  • 存儲的數據各會話窗口無法共享

  • 只能存儲字符串類型的數據,復雜的對象數據必須借助JSON的stringfy和parse處理 

Strorage本地存儲實例

在model文件夾下面新建一個storage.js

const storage = {
  set(key,value){
    sessionStorage.setItem(key,JSON.stringify(value));
  },
  get(key){
    return JSON.parse(sessionStorage.getItem(key));
  },
  getForIndex(index){
    return sessionStorage.key(index)
  },
  getKeys(){
    let items = this.getAll();
    let keys = [];
    for(let index = 0;index<items.length;index++){
      keys.push(items[index].key);
    }
  },
  getLength(){
    return sessionStorage.length;
  },
  getSupport(){
    return (typeof (Storage) !== "undefined")?true:false;
  },
  remove(key){
    sessionStorage.removeItem(key);
  },
  removeAll(){
    sessionStorage.clear();
  },
  getAll(){
    let len = sessionStorage.length;
    let arr = [];
    for(let i=0;i<len.length;i++){
      const getKey =  sessionStorage.key(i);
      const getVal = sessionStorage.getItem(getKey);
      arr[i] = {
        "key":getKey,
        "val":getVal,
      }
    }
    return arr;
  },
};
 
export default storage;

創建store

import Vue from "vue";
import Vuex from "vuex";
import storage from "@/model/storage";
 
Vue.use(Vuex);
 
const store = new Vuex.Store({
  state: {
    //  存儲token
    token: '',
    userName: '',
    roleId:'',
    staticRoute:[]//這個是本地路由
  },
 
  actions: {
    setuserInfoFun(context, name){
      context.commit('setuserInfo', name);
    },
    set_tokenFun(context, token){
      context.commit('set_token', token)
    },
    del_tokenFun(context){
      context.commit('del_token')
    },
    set_roleIdFun(context,id){
      context.commit('set_roleId',id)
    },
    set_routerFun(context,route){
      context.commit('set_router',route)
    }
  },
 
//  計算屬性
  mutations: {
    //  修改token,并將token存入localStorage
    set_token(state, token){
      state.token = token;
      storage.set('token', token);
    },
    del_token(state){
      state.token = "";
      storage.remove('token');
    },
    setuserInfo(state, userName){
      state.userName = userName;
    },
    set_roleId(state,id){
      state.roleId = id;
    },
    set_router(state,router){
      state.staticRoute = router;
      storage.set('route', router);
    }
  }
});
 
export default store;

讀到這里,這篇“Vue中的Strorage本地化存儲怎么實現”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

vue
AI

察哈| 澎湖县| 米泉市| 东台市| 磐石市| 高阳县| 麻江县| 乐安县| 武山县| 武夷山市| 汉中市| 股票| 和顺县| 开原市| 庆城县| 赤峰市| 沁水县| 渭南市| 淮阳县| 彰化市| 育儿| 延安市| 福海县| 巍山| 南充市| 南乐县| 龙江县| 铁岭市| 石嘴山市| 昭通市| 勃利县| 凉山| 南康市| 伊吾县| 江门市| 关岭| 靖安县| 若羌县| 土默特左旗| 三原县| 松阳县|