前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >vue浏览器缓存问题_vue兼容浏览器能兼容到几

vue浏览器缓存问题_vue兼容浏览器能兼容到几

作者头像
全栈程序员站长
发布2022-09-27 10:09:54
6500
发布2022-09-27 10:09:54
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

一.客户端缓存:localStorage/sessionStorage

localStorage -持久化的本地存储,除非主动删除数据,否则数据永远不会过期.

sessionStorage-本地存储一个会话(session)中的数据,当页面关闭,数据将清除.存储大小约为5M.


二.localStorage(sessionStorage)基本用法

1.设置

代码语言:javascript
复制
setItem(key,value)                  
localStorage.setItem('a','123');

2.1获取

代码语言:javascript
复制
getItem(key);                                        
localStorage.getItem('a'); //返回123

2.2遍历获取

代码语言:javascript
复制
var storage=window.localStorage;
            storage.a1=1;
            storage.setItem("a2",2);
            for(var i=0;i<storage.length;i++){
                var key=storage.key(i);
                console.log(key);
            }

3.删除

代码语言:javascript
复制
removeItem(key);                                    
localStorage.removeItem('a');  //删除指定缓存
localStorage.clear();  //清空所有本地缓存
注意:

①localStroage返回的所有数据都是字符串.当缓存的数据为json时,需要用以下方法转换:

代码语言:javascript
复制
JSON.stringify()用于从一个对象解析出字符串;
JSON.parse()用于从一个字符串中解析出json对象。
var jsonData = {
  
  'name': '小红', 'age': 18}; // 定义一个JSON对象
var str_jsonData = JSON.stringify(jsonData);
console.log(typeof(str_jsonData)); // string
localStorage.setItem('localData', str_jsonData); // 存储字符串数据到本地
var getLocalData = localStorage.getItem('localData'); // 读取字符串数据
console.log(typeof(getLocalData)); // string
var jsonObj = JSON.parse(getLocalData);
console.log(typeof(jsonObj)); // obj
console.log(jsonObj.age); // 18

②sessionStorage用法与localStroage一样,只不过它们的作用域不一样;sessionStorage是会话级别的存储,关闭页面,数据将被清除.


三.项目应用

1.将用户登入信息存入sessionStorage

代码语言:javascript
复制
......
  const validateUsername = (rule, value, callback) => {
      if (!isvalidUsername(value)) {
        callback(new Error('请输入正确的用户名'))
      } else {
        //登入成功后,缓存用户登入信息
        sessionStorage.setItem('username', value)     //将用户名缓存
        var time = new Date().toLocaleDateString() + new Date().toLocaleTimeString()
        sessionStorage.setItem('t', time)             //将登入时间缓存
        callback()
      }
    }
......

2.获取用户登入信息

代码语言:javascript
复制
......
 handleGetUser() {
      var uname = sessionStorage.getItem('username')
      var time = sessionStorage.getItem('t')
      alert('登入用户名为:' + uname + ' ' + '登入时间为:' + time)
    },
......

3.清除缓存

代码语言:javascript
复制
...... handleClear() { localStorage.clear() //清除所有本地缓存 sessionStorage.clear() //清除当前会话所有缓存 sessionStorage.removeItem('username') //清除指定缓存 alert('清除成功') }, ......

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/179067.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一.客户端缓存:localStorage/sessionStorage
  • 二.localStorage(sessionStorage)基本用法
    • 注意:
    • 三.项目应用
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档