From 462f9bbea2e65a0627a09d7c19b06f57c4584195 Mon Sep 17 00:00:00 2001 From: "weicw1996@qq.com" Date: Tue, 6 Oct 2026 04:41:13 +0800 Subject: [PATCH] =?UTF-8?q?:bug:=20=E4=BF=AE=E5=A4=8D=E6=89=93=E5=8D=A1?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E8=BD=B4=E5=BC=82=E5=B8=B8=E6=A0=87=E7=AD=BE?= =?UTF-8?q?=E9=9A=8F=E8=AE=B0=E5=BD=95=E9=87=8D=E6=8E=92=E9=94=99=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 时间轴 key 与异常索引共用 `${nodeCode}-${index}`,带上了序号。时间轴按打卡时间 排序,序号随顺序变化,异常标签就会挂到别的节点上或整个消失——编辑打卡时间或把 未打卡改成已打卡都会触发,实测改完「卸货」后它的「已处理异常/详情」直接不见了。 key 改为只认节点标识(nodeCode → id → 兜底序号),异常索引与 v-for 同源, 顺序怎么变都对得上。顺带修好原本就错位的「到场」「装货」:它们的异常标签此前 一直没显示出来。 --- src/views/business/components/waybill-manage-page.vue | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/views/business/components/waybill-manage-page.vue b/src/views/business/components/waybill-manage-page.vue index 873787b..1731f29 100644 --- a/src/views/business/components/waybill-manage-page.vue +++ b/src/views/business/components/waybill-manage-page.vue @@ -5562,10 +5562,10 @@ export default { const fallback = new Date(text.replace(/-/g, '/')).getTime(); return Number.isNaN(fallback) ? null : fallback; }, - // 时间轴 key:与模板 v-for 的 :key 保持同一算法,异常索引也用它做键, - // 两边各写一份迟早会错位。 + // 时间轴 key:只认节点标识,不带序号。异常索引与模板 v-for 共用它, + // 带上序号的话,编辑打卡时间会重排时间轴,序号一变异常标签就挂错节点或整个消失。 waybillPunchRecordKey(record, index) { - return `${record?.nodeCode || record?.id || 'punch'}-${index}`; + return String(record?.nodeCode || record?.id || `punch-${index}`); }, // 未处理完 → 跟进;全处理完 → 只读详情(与异常处置列表的操作口径一致) openWaybillPunchRecordException(exception) {