基于Vue sessionStorage实现保留搜索框搜索内容


Posted in Javascript onJune 01, 2020

最近遇到个需求:因为是后台管理系统,会频繁切换页面(路由),再次切换路由就重新加载页面了,重新输入条件很繁琐,需要保留搜索框的内容。(废话,看不同项目的不同需求吧)

保留搜索框内容:

利用sessionStorage来保存每次搜索框的内容。

后台管理系统的搜索栏除了筛选条件肯定还会有搜索按钮吧

基于Vue sessionStorage实现保留搜索框搜索内容

我的键名是根据我的页面路由名 + 'Stor'来取名的,这个拼接的'Stor'只是我个人用来区分此后缀的键名是存什么内容的,可按自己喜好来。

比如路由是carManage 键名就是carManageStor

因为不止一个页面要实现这个效果,在进入页面时要进行一次取值,拿浏览器存储中的数据:sessionStorage.getItem('键名')

为了好看,把获取的方法写到method里了,

getDefaultStor(routeName) {
  return sessionStorage.getItem(`${routeName}Stor`)
}

routeName参数的话看你自己的路由名啦,从this.$route里面拿。

清除缓存内容:

watch: {
  name(val) {
    if(!val) {
      sessionStorage.removeItem('键名') //键名的套路是一样的
    }   
  } 
}

还有一点是,如果当用户清除了输入框的内容,就把值清掉。

我的做法是通过监听输入框的name值来判断为空就清掉:

省事点的办法是直接监听name的变化,有值就sessionStorage.setItem(),没值就sessionStorage.removeItem()。

但是我感觉这样应该比较耗能,就没用这种偷懒的方式。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
原生Ajax 和jQuery Ajax的区别示例分析
Dec 17 Javascript
javascript事件冒泡和事件捕获详解
May 26 Javascript
JavaScript学习笔记之数组的增、删、改、查
Mar 23 Javascript
JS实现漂亮的时间选择框效果
Aug 20 Javascript
JavaScript实现QQ列表展开收缩扩展功能
Oct 30 Javascript
Angular4自制一个市县二级联动组件示例
Nov 21 Javascript
jQuery实现table表格checkbox全选的方法分析
Jul 04 jQuery
深入浅析var,let,const的异同点
Aug 07 Javascript
Vue项目引发的「过滤器」使用教程
Mar 12 Javascript
Vue源码之关于vm.$delete()/Vue.use()内部原理详解
May 01 Javascript
vue element-ui之怎么封装一个自己的组件的详解
May 20 Javascript
JS实现悬浮球只在一侧滑动并且是横屏状态下
Aug 19 Javascript
微信小程序开发(一):服务器获取数据列表渲染操作示例
Jun 01 #Javascript
JavaScript forEach中return失效问题解决方案
Jun 01 #Javascript
原生JS封装拖动验证滑块的实现代码示例
Jun 01 #Javascript
jQuery cookie的公共方法封装和使用示例
Jun 01 #jQuery
webpack安装配置与常见使用过程详解(结合vue)
Jun 01 #Javascript
使用Vue+Django+Ant Design做一个留言评论模块的示例代码
Jun 01 #Javascript
el-table树形表格表单验证(列表生成序号)
May 31 #Javascript
You might like
ajax缓存问题解决途径
2006/12/06 PHP
Php Ctemplate引擎开发相关内容
2012/03/03 PHP
PHP5.3的垃圾回收机制(动态存储分配方案)深入理解
2012/12/10 PHP
PHP实现判断数组是一维、二维或几维的方法
2017/02/06 PHP
php实现算术验证码功能
2018/12/05 PHP
PHP获取类私有属性的3种方法
2020/09/10 PHP
用js判断页面刷新或关闭的方法(onbeforeunload与onunload事件)
2012/06/22 Javascript
JavaScript高级程序设计(第3版)学习笔记10 再访js对象
2012/10/11 Javascript
jQuery动态显示和隐藏datagrid中的某一列的方法
2013/12/11 Javascript
浅析AngularJS中的指令
2016/03/20 Javascript
AngularJS服务service用法总结
2016/12/13 Javascript
jQuery+pjax简单示例汇总
2017/04/21 jQuery
vue中遇到的坑之变化检测问题(数组相关)
2017/10/13 Javascript
浅谈VUE单页应用首屏加载速度优化方案
2018/08/28 Javascript
小程序调用微信支付的方法
2019/09/26 Javascript
Vue 解决通过this.$refs来获取DOM或者组件报错问题
2020/07/28 Javascript
Python实现多属性排序的方法
2018/12/05 Python
python自动保存百度盘资源到百度盘中的实例代码
2019/08/26 Python
使用Python matplotlib作图时,设置横纵坐标轴数值以百分比(%)显示
2020/05/16 Python
python3.8.1+selenium实现登录滑块验证功能
2020/05/22 Python
推荐值得学习的12款python-web开发框架
2020/08/10 Python
解决pip安装的第三方包在PyCharm无法导入的问题
2020/10/15 Python
宝塔面板出现“open_basedir restriction in effect. ”的解决方法
2021/03/14 PHP
CSS实现半透明边框与多重边框的场景分析
2019/11/13 HTML / CSS
台湾深度自由行旅游平台:Tripbaa趣吧
2017/10/10 全球购物
意大利男装网店:Vrients
2019/05/02 全球购物
企业管理专业个人求职信范文
2013/09/24 职场文书
怎样写好自我鉴定
2013/12/04 职场文书
优良学风班总结材料
2014/02/08 职场文书
合作协议书
2014/04/23 职场文书
人力资源本科毕业生求职信
2014/06/04 职场文书
个人查摆问题自查报告
2014/10/16 职场文书
2015年试用期工作总结范文
2015/05/28 职场文书
迎新生欢迎词2015
2015/07/16 职场文书
《三国志》赏析
2019/08/27 职场文书
MySQL 外键约束和表关系相关总结
2021/06/20 MySQL