wangEditor icon indicating copy to clipboard operation
wangEditor copied to clipboard

通过insertNode方法插入表格,点击前段落空白处,控制台报错

Open Mk-web1012 opened this issue 2 years ago • 2 comments

bug 描述

通过insertNode方法插入表格后,双击上一次的插入点,报错 Cannot resolve a Slate point from DOM point: [object HTMLDivElement],0 。 但是能正常显示 请输入内容……

你预期的样子是?

双击不报错,且这报错是否会有影响

系统和浏览器及版本号

win11 chrom 114.0.5735.199

wangEditor 版本

wangEditor 5

demo 能否复现该 bug ?

  • 中文 demo https://www.wangeditor.com/demo/

在线 demo

请尽量提供在线 demo (推荐以下网站),帮助我们最低成本复现 bug

  • https://codesandbox.io/
  • https://codepen.io/
  • https://stackblitz.com/

最小成本的复现步骤

输入文本后(比如"test"),在光标放入文本后方,控制台通过insertNode插入表格,然后双击"test"段落 (请告诉我们,如何最快的复现该 bug)

  • 步骤一
  • 步骤二
  • 步骤三

Mk-web1012 avatar Jul 17 '23 03:07 Mk-web1012

不用insertNode也可以复现,在demo中,输入"test",在"test"最后,通过toolBar工具栏插入表格,再点击"test"后段落空白处,依然有Cannot resolve a Slate point from DOM point: [object HTMLDivElement],0

Mk-web1012 avatar Jul 17 '23 06:07 Mk-web1012

import { useEffect } from "react";

const useErrorOverlaySuppress = () => { useEffect(() => { const handler = (event: ErrorEvent) => { if ( event.message?.includes("Cannot resolve a Slate point from DOM point") ) { event.preventDefault(); const overlays = document.querySelectorAll( "[data-nextjs-error-overlay], iframe" ); overlays.forEach((el) => el.remove()); } };

window.addEventListener("error", handler); return () => { window.removeEventListener("error", handler); }; }, []); }; export default useErrorOverlaySuppress; 自定义hooks 强制阻止报错 拿去不谢

xenera-wangrui avatar May 07 '25 05:05 xenera-wangrui