
微信小程序如何写历史记录功能;史记录这个功能在小程序使用概率和清除缓存差不多,给人的感觉就是你可以不用,但不能没有
但你要真没有,那好像也没啥;在即用即走的快餐时代;面对部分小程序来说,并不是真要的
逻辑
例如:在文章页面请求详情后执行函数注意:点击文章添加缓存,同文章会把之前的旧记录删除再新增到第一个,如果需要每个文章点击都给他保存一条记录可以删除第14行代码
// 历史记录
history() {
const history = {
id: this.infoDa.id,
title: this.infoDa.name,
cover: this.infoDa.logo,
xilDa: this.xilDa[0].name,
};
// 从本地存储中获取已有的阅读记录列表
let historyList = uni.getStorageSync('historyList') || [];
// 查找缓存中是否已有该文章记录,如果有则删除
historyList = historyList.filter(record => record.id !== this.infoDa.id);
// 将当前文章的阅读记录添加到列表中
historyList.push(history);
// 再将更新后的阅读记录列表存回本地存储
uni.setStorageSync('historyList', historyList);
},
历史页面之需要获取本地缓存即可
onLoad() {
this.historyList = uni.getStorageSync('historyList') || [];
},
思考
别看历史记录是一个小功能几分钟的事情,你要把一个产品做的极致还得考虑,在某一时间段内容点击同样的文章,是否要刷新缓存顺序;
那如果某文章今天点了一次;过几天再点一次,刷新缓存顺序是不是又要做期日上的差异
最后
薛定谔的猫是否存活,需要你打开箱子查看;可薛定谔的存在,取决于你是否想到他
so,小程序的历史记录需要实现什么功能的前提下是你需要它,若只想拥有那就随意,瓜不甜但解渴