uni-app使用setStorageSync存储历史搜索记录,与setStorage区别

一、setStorageSync与setStorage的区别

都可以将 data 存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容。

setStorageSync:同步接口,需要等待同步方法完成才可执行下一步,也就是需要等待当前任务完成才可以执行下一个任务。
setStorage:异步接口,不会发生任务阻塞,当对storage数据进行修改时,无需等待修改保存完成也可以接下去执行

所以,如果后续的操作需要使用更新storage后保存的data,则使用setStorageSync
使用异步性能更好,使用同步数据更安全

二、使用setStorageSync存储历史搜索记录

	// 本地缓存 搜索历史
	setSearchStorage(searchkey) {
		// 存一个数组类型
		// 先取出本地缓存的数据
		let searchArr=uni.getStorageSync('search_key')||[]
		// 从前面插入
		searchArr.unshift(searchkey)
				
		uni.setStorageSync('search_key',searchArr)
	},
	// 取出本地缓存数据并显示,不会自动执行,放到生命周期函数中
	getSearchStorage() {
		let getData = uni.getStorageSync('search_key')
		// 数组去重
		let setData = [...new Set(getData)]
		this.historyData = setData
	}

	// 生命周期函数
	created() {
		this.getSearchStorage()
		// log(this.historyData)
	}

如有不足,欢迎各位小伙伴指点讨论~

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值