diff --git a/src/editor/core/draw/Draw.ts b/src/editor/core/draw/Draw.ts index a8cb3d5..ec3e791 100644 --- a/src/editor/core/draw/Draw.ts +++ b/src/editor/core/draw/Draw.ts @@ -851,11 +851,16 @@ export class Draw { }) } - // 页面改变 + // 信息变动回调 setTimeout(() => { + // 页面尺寸改变 if (this.listener.pageSizeChange) { this.listener.pageSizeChange(pageRowList.length) } + // 文档内容改变 + if (this.listener.contentChange && isSubmitHistory) { + this.listener.contentChange() + } }) } diff --git a/src/editor/core/listener/Listener.ts b/src/editor/core/listener/Listener.ts index 2ea6760..19b2c15 100644 --- a/src/editor/core/listener/Listener.ts +++ b/src/editor/core/listener/Listener.ts @@ -1,4 +1,5 @@ import { + IContentChange, IIntersectionPageNoChange, IPageScaleChange, IPageSizeChange, @@ -15,6 +16,7 @@ export class Listener { public pageSizeChange: IPageSizeChange | null public pageScaleChange: IPageScaleChange | null public saved: ISaved | null + public contentChange: IContentChange | null constructor() { this.rangeStyleChange = null @@ -23,6 +25,7 @@ export class Listener { this.pageSizeChange = null this.pageScaleChange = null this.saved = null + this.contentChange = null } } \ No newline at end of file diff --git a/src/editor/interface/Listener.ts b/src/editor/interface/Listener.ts index 1fa9dae..e1d51b9 100644 --- a/src/editor/interface/Listener.ts +++ b/src/editor/interface/Listener.ts @@ -30,3 +30,5 @@ export type IPageSizeChange = (payload: number) => void export type IPageScaleChange = (payload: number) => void export type ISaved = (payload: IEditorResult) => void + +export type IContentChange = () => void