vue前端缓存方法有哪些,vue组件缓存方式

  vue前端缓存方法有哪些,vue组件缓存方式

  本文主要介绍关于Vue缓存方法的相关信息,通过示例代码进行了非常详细的介绍,对大家的学习或者工作有一定的参考价值。有需要的朋友下面和边肖一起学习。

  最近提出了一个新的要求“前端缓存”。

  背景:为了解决表单重复填写频率高的问题,要求打开页面,自动填写上次输入的数据。数据保存期为一周(有效期为7天)。

  谈到缓存,首先想到的是localstorage和sessionStorage。

  sessionStorage

  也称为会话缓存,当用户关闭浏览器窗口时,数据会被删除;

  sessionStorage.setItem(key , value );//存储

  session storage . getitems( key );//按获取值。

  session storage . remove items( key );//按键单独删除

  session storage . clear();//删除所有数据

  sessionStorage.length//获取数据量

  session storage . value of();//获取所有值

  localstorage

  存储的数据没有时间限制,只要不被删除,就会存在。

  localstorage.setItem(key , value );//保存数据

  local storage . getitem( key );//读取数据

  localstorage.removeItem(key ,);//删除单个数据

  local storage . clear();//删除所有数据

  localstorage.key(索引);//获取索引的键

  而value必须是字符串,web存储的API只能对字符串进行操作。

  由于sessionStorage browser的关闭窗口数据会被清空,不适用我想开发的需求。如果只考虑这两种方案的话,似乎localstorage会相对合适一些,但是如果使用localstorage,并且设置了时间限制的话,从代码层面来说会比较麻烦。

  

localstorage具体实现思路

  1. 存储数据时加上时间戳

  当数据较大时,可以使用localstorage,存储数据时写一个时间,获取时与当前时间进行比较。

  在项目开发中,我们可以编写一个通用的方法,用时间戳来存储它。

  导出函数setLocalStorageAndTime (key,value) {

  window . local storage . setitem(key,JSON.stringify({ data: value,time: new Date()。getTime() }))

  }

  项目申请

  Setlocalstorageandtime (XXX ,{name: XXX})用于数据重新存储

  2.将数据与当前时间进行比较。

  导出函数getLocalStorageAndTime (key,exp=86400000) {

  //获取数据

  let data=window . local storage . getitem(key)

  如果(!数据)返回空值

  let dataObj=JSON.parse(data)

  //与到期时间进行比较

  if(新日期()。getTime() - dataObj.time exp) {

  //过期删除返回null

  removeLocalStorage(键)

  Console.log(“信息已过期”)

  返回null

  }否则{

  返回dataObj.data

  }

  }

  程序员最大的特点就是懒。如果有外挂,绝对不会放过。如果他们能CV,绝对不会敲打他们。因为写起来太复杂,我果断放弃使用localstorage,寻找更简单方便的方法。通过同事的推荐最终选择了Vue.ls,下面就来介绍一下Vue.ls。

  

Vue.ls

  一种Vue包的本地存储方法。Vue插件,用来从Vue上下文中使用本地存储、会话存储、内存存储,简单易用,Api描述比较全面。

  安装

  新公共管理理论

  npm安装vue-ls -保存

  故事

  纱线添加vue-ls

  使用

  Vue-ls存储API

  从“vue-ls”导入存储;

  选项={

  命名空间: vuejs__ ,//关键字前缀

  Name: ls ,//命名Vue变量。或者这个。[$ls],

  Storage: local ,//存储名称:会话,本地,内存

  };

  Vue.use(存储、选项);

  //或者Vue.use(存储);

  新Vue({

  埃尔: #app ,

  已安装:函数(){

  Vue.ls.set(foo , boo );

  //设置有效期

  Vue.ls.set(foo , boo ,60 * 60 * 1000);//有效期为1小时

  vue . ls . get( foo );

  Vue.ls.get(boo ,10);//如果没有设置boo,则返回默认值10

  let callback=(val,oldVal,uri)={

  console . log( local storage change ,val);

  }

  Vue.ls.on(foo ,callback) //检测foo键的变化并触发回调

  Vue.ls.off(foo ,回调)//不调查

  vue . ls . remove( foo );//移除

  }

  });

  Global(全局)

  Vue.ls

  Context(上下文)

  这个。$ls

  API 说明

  Vue.ls.get(名称,定义)

  返回存储中的名称值。在返回之前在JSON中内部解析该值。

  Def:默认值为null,如果设置了,则返回名称。

  Vue.ls.set(名称,值,过期)

  设置存储中name的值。并将值转换成JSON。

  Expire:默认值为null,name name的有效时间以毫秒为单位。

  Vue.ls.remove(名称)

  从存储中删除名称。成功移除true,否则返回false。

  Vue.ls.clear()

  清空存储。

  Vue.ls.on(名称,回拨)

  持续监控其他标签上名称的变化,变化时触发回调,传递以下参数:

  NewValue:当前存储中的名称,从持久性JSON中解析

  OldValue:旧存储中的名称,从持久性JSON中解析

  Url:从选项卡中修改URL

  Vue.ls.off(名称,回拨)

  删除上一个监听器Vue.ls.on(名称,回调)

  实操

  存储:以键值对的形式,最后一个参数是有效期。

  值:该参数是存储的键。

  查看:可以在本地存储中查看存储的数据

  

总结

  localstorage以文件的形式存储在本地,永久保存;Sessionstorage(会话存储)用于临时存储;Vue.ls是Vue包的本地存储方式,简单方便易用。LocalStorage和sessionStorage只能存储字符串类型,复杂的对象可以通过ECMAScript提供的stringify和JSON对象的parse来处理。

  这就是这篇关于Vue缓存方法的文章。有关Vue缓存方法的更多信息,请搜索我们以前的文章或继续浏览下面的相关文章。希望你以后能支持我们!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: