From 27599dca106229071d70e06d1bcab8ffa19136cd Mon Sep 17 00:00:00 2001 From: fantasticit Date: Fri, 19 Aug 2022 18:54:59 +0800 Subject: [PATCH] tiptap: keep scroll top --- packages/client/src/tiptap/core/menus/excalidraw/modal.tsx | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/packages/client/src/tiptap/core/menus/excalidraw/modal.tsx b/packages/client/src/tiptap/core/menus/excalidraw/modal.tsx index 348b8dfa..8f11c87a 100644 --- a/packages/client/src/tiptap/core/menus/excalidraw/modal.tsx +++ b/packages/client/src/tiptap/core/menus/excalidraw/modal.tsx @@ -53,7 +53,14 @@ export const ExcalidrawSettingModal: React.FC = ({ editor }) => { return; } + /** + * FIXME: 绘图更新后会滚动 dom 到顶点,原因未知,在此 hack 修复下! + */ + const currentScrollTop = document.querySelector('main#js-tocs-container')?.scrollTop; editor.chain().focus().setExcalidraw({ data }).run(); + setTimeout(() => { + document.querySelector('main#js-tocs-container').scrollTop = currentScrollTop; + }); toggleVisible(false); }, [Excalidraw, editor, data, toggleVisible]);