From fdcf6397e1ce62ef1ed18a526a0642c3f120df3b Mon Sep 17 00:00:00 2001 From: Hufe921 Date: Tue, 18 Jun 2024 21:56:48 +0800 Subject: [PATCH] fix: executeSetControlProperties api invalid in table #653 --- src/editor/core/draw/control/Control.ts | 28 ++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/src/editor/core/draw/control/Control.ts b/src/editor/core/draw/control/Control.ts index 312ab29..5729709 100644 --- a/src/editor/core/draw/control/Control.ts +++ b/src/editor/core/draw/control/Control.ts @@ -793,17 +793,21 @@ export class Control { if (isReadonly) return const { conceptId, properties } = payload let isExistUpdate = false - const pageComponentData: IEditorData = { - header: this.draw.getHeaderElementList(), - main: this.draw.getOriginalMainElementList(), - footer: this.draw.getFooterElementList() - } - for (const key in pageComponentData) { - const elementList = pageComponentData[key]! + function setProperties(elementList: IElement[]) { let i = 0 while (i < elementList.length) { const element = elementList[i] i++ + if (element.type === ElementType.TABLE) { + const trList = element.trList! + for (let r = 0; r < trList.length; r++) { + const tr = trList[r] + for (let d = 0; d < tr.tdList.length; d++) { + const td = tr.tdList[d] + setProperties(td.value) + } + } + } if (element?.control?.conceptId !== conceptId) continue isExistUpdate = true element.control = { @@ -821,6 +825,16 @@ export class Control { i = newEndIndex } } + // 页眉页脚正文启动搜索 + const pageComponentData: IEditorData = { + header: this.draw.getHeaderElementList(), + main: this.draw.getOriginalMainElementList(), + footer: this.draw.getFooterElementList() + } + for (const key in pageComponentData) { + const elementList = pageComponentData[key]! + setProperties(elementList) + } if (!isExistUpdate) return // 强制更新 for (const key in pageComponentData) {