diff --git a/packages/designer/src/document/history.ts b/packages/designer/src/document/history.ts index 3f9cb9ba4..02bcceabf 100644 --- a/packages/designer/src/document/history.ts +++ b/packages/designer/src/document/history.ts @@ -37,9 +37,9 @@ export class History { this.records = [this.session]; reaction((): any => { - if (this.asleep) return null; return dataFn(); }, (data: T) => { + if (this.asleep) return null; untracked(() => { const log = this.currentSerialization.serialize(data); if (this.session.isActive()) { diff --git a/packages/engine/src/modules/utils.ts b/packages/engine/src/modules/utils.ts index 3074b828b..6d89e31e0 100644 --- a/packages/engine/src/modules/utils.ts +++ b/packages/engine/src/modules/utils.ts @@ -9,7 +9,7 @@ const utils = { getNodeSchemaById, getConvertedExtraKey, getOriginalExtraKey, - startTransaction: transactionManager.startTransaction, + executeTransaction: transactionManager.executeTransaction.bind(transactionManager), }; export default utils; \ No newline at end of file diff --git a/packages/renderer-core/src/hoc/leaf.tsx b/packages/renderer-core/src/hoc/leaf.tsx index 0dfb2d9a0..fe75a5ef9 100644 --- a/packages/renderer-core/src/hoc/leaf.tsx +++ b/packages/renderer-core/src/hoc/leaf.tsx @@ -233,7 +233,7 @@ export function leafWrapper(Comp: types.IBaseRenderComponent, { const { hidden = false, condition = true, - } = nextProps.__inner__ || {}; + } = nextProps.__inner__ || this.leaf?.export?.(TransformStage.Render) || {}; return { nodeChildren: null, childrenInState: false, @@ -399,7 +399,11 @@ export function leafWrapper(Comp: types.IBaseRenderComponent, { /** 监听参数变化 */ initOnPropsChangeEvent(leaf = this.leaf): void { +<<<<<<< HEAD const dispose = leaf?.onPropChange?.((propChangeInfo: PropChangeOptions) => { +======= + const dispose = leaf?.onPropChange?.(debounce((propChangeInfo: PropChangeOptions) => { +>>>>>>> feat/autoRepaintNode if (!this.autoRepaintNode) { return; } @@ -449,7 +453,11 @@ export function leafWrapper(Comp: types.IBaseRenderComponent, { }); this.judgeMiniUnitRender(); +<<<<<<< HEAD }); +======= + }, 20)); +>>>>>>> feat/autoRepaintNode dispose && this.disposeFunctions.push(dispose); } diff --git a/packages/renderer-core/tests/renderer/__snapshots__/renderer.test.tsx.snap b/packages/renderer-core/tests/renderer/__snapshots__/renderer.test.tsx.snap index 169ed545c..79c5f0f08 100644 --- a/packages/renderer-core/tests/renderer/__snapshots__/renderer.test.tsx.snap +++ b/packages/renderer-core/tests/renderer/__snapshots__/renderer.test.tsx.snap @@ -11,6 +11,12 @@ exports[`Base Render renderComp 1`] = ` >