vue 搜索框添加历史搜索记录

笔者vue项目有一个需求,搜索框添加历史搜索记录。想着很久没更新博客了,记录一下吧。
PS:pinia+vue3+vant+ts,或许你在使用vue2的语法,不要紧,可以根据自己的需求简单改改。

效果图

在这里插入图片描述

正文

搜索框的逻辑就不介绍了,今天这个问题其实是vue操作localStorage。笔者先写了一个工具类来完成对缓存的操作:

export class CacheManager {
   
  static getHomeSearchHistoryWords() {
   
    return localStorage.getItem("home-search-history-words")?.split(",") ?? [];
  }

  static setHomeSearchHistoryWords(words: string) {
   
    return localStorage.setItem("home-search-history-words", words);
  }

  static clearHomeSearchHistoryWords() {
   
    localStorage.removeItem("home-search-history-words");
  }
}
  • 双问号的作用是左表达式为空或undefined时,会取右表达式的值
  • getHomeSearchHistoryWords 为读取历史搜索记录,返回值为数组;setHomeSearchHistoryWords 为写入,参数为String类型;clearHomeSearchHistoryWords 为清空。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值