From 8f0f725e2680d5a922fa2c46194285d329eaa5dc Mon Sep 17 00:00:00 2001 From: duxingchen Date: Thu, 6 Aug 2026 11:42:52 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8DWBS=E7=BC=96=E7=A0=81:=20?= =?UTF-8?q?=E5=88=86=E6=94=AF1=E2=86=92=E5=88=86=E6=94=AF1.1=E5=B1=82?= =?UTF-8?q?=E7=BA=A7=E6=AD=A3=E7=A1=AE(prefix=E7=A9=BA=E5=AD=97=E7=AC=A6?= =?UTF-8?q?=E4=B8=B2=E5=A4=84=E7=90=86)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/pages/scan/components/TreeCanvas.vue | 16 ++++++++-------- .../src/pages/scan/components/WorkspaceArea.vue | 15 +++++++-------- 2 files changed, 15 insertions(+), 16 deletions(-) diff --git a/track-uniapp/src/pages/scan/components/TreeCanvas.vue b/track-uniapp/src/pages/scan/components/TreeCanvas.vue index 0f7b844..222ccde 100644 --- a/track-uniapp/src/pages/scan/components/TreeCanvas.vue +++ b/track-uniapp/src/pages/scan/components/TreeCanvas.vue @@ -108,19 +108,19 @@ export default { }, branchLabelMap() { const map = {}; + if (!this.product || !this.product.task_tree) return map; const traverse = (tasks, prefix) => { if (!tasks) return; tasks.forEach((t, i) => { - map[t.id] = prefix ? `分支 ${prefix}${i + 1}` : '分支 1'; - traverse(t.child_tasks, prefix ? `${prefix}${i + 1}.` : `${i + 1}.`); + const num = prefix ? `${prefix}.${i + 1}` : `${i + 1}`; + map[t.id] = `分支 ${num}`; + traverse(t.child_tasks, num); }); }; - if (this.product && this.product.task_tree) { - this.product.task_tree.forEach((t, i) => { - map[t.id] = '主分支'; - traverse(t.child_tasks, `${i + 1}.`); - }); - } + this.product.task_tree.forEach((t, i) => { + map[t.id] = '主分支'; + traverse(t.child_tasks, ''); + }); return map; }, canvasWidth() { if (!this.treeNodes.length) return 400; return Math.max(800, Math.max(...this.treeNodes.map(n => n.x)) + 300); }, diff --git a/track-uniapp/src/pages/scan/components/WorkspaceArea.vue b/track-uniapp/src/pages/scan/components/WorkspaceArea.vue index 53fabc4..8814978 100644 --- a/track-uniapp/src/pages/scan/components/WorkspaceArea.vue +++ b/track-uniapp/src/pages/scan/components/WorkspaceArea.vue @@ -143,16 +143,15 @@ export default { const traverse = (tasks, prefix) => { if (!tasks) return; tasks.forEach((t, i) => { - if (prefix === '') { - map[t.id] = '主分支'; - } else { - map[t.id] = `分支 ${prefix}${i + 1}`; - } - const nextPrefix = prefix === '' ? `${i + 1}.` : `${prefix}${i + 1}.`; - traverse(t.child_tasks, nextPrefix); + const num = prefix ? `${prefix}.${i + 1}` : `${i + 1}`; + map[t.id] = `分支 ${num}`; + traverse(t.child_tasks, num); }); }; - traverse(this.product.task_tree, ''); + this.product.task_tree.forEach((t, i) => { + map[t.id] = '主分支'; + traverse(t.child_tasks, ''); + }); return map; }, },