fix: 修复 4 个正确性问题(分享秒数/主题同步/云推送定位/streak重算)

- timer: 完成弹窗存实际时长 completionActualElapsed,分享改用它,避免用动画值导致秒数错误
- theme: setTheme 补 _markLocalChanged,避免云恢复覆盖未同步的主题改动
- cloud: _doPush 重定位查询补 orderBy(updatedAt desc),与 pullAll 一致,避免命中最旧文档
- storage: deleteRecord 改用 recomputeStreak,修复删连续链中间某天 streak 虚高

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
liucheng
2026-07-25 14:51:09 +08:00
parent b47a48259e
commit 1c140bd503
4 changed files with 9 additions and 4 deletions
+3 -2
View File
@@ -96,8 +96,8 @@ const deleteRecord = (recordId) => {
})
if (!found) return // id not found, don't overwrite storage
wx.setStorageSync(RECORDS_KEY, records)
// Re-validate streak: deleting the last record for a day should break the streak
validateStreak()
// 重新计算连续打卡:删连续链中间某天会断链,validateStreak 只在 lastDate 被删时重算,不够
recomputeStreak()
cloud.pushAll()
}
@@ -435,6 +435,7 @@ module.exports = {
validateStreak,
recomputeStreak,
updateStreak,
_markLocalChanged,
getToday,
getDateOffset,
getTodayRecord