删除编辑器里所有内容后,输入中文会导致编辑器崩溃
Closed this issue · 9 comments
以这个demo的代码为例子 https://fantasy-editor.jieee.dev/examples/serialize/markdown
我把里面的 value.json 文件的内容修改为了: [{ "type":"paragraph", "children": [{ "text":"" }] }]
目的是让编辑器初始值为空
然后我随便输入一点内容, 接着全选,删除编辑器里所有内容(可能会按下很多次删除键)
然后切换到中文输入法, 输入中文,
然后编辑器就崩溃了(并非每次都崩溃,但概率极大,可能90%的概率)
这是报错信息:
Error: Cannot resolve a Slate point from DOM point: [object Text],1
我简单的查询了下,和这个 问题有点像 ianstormtaylor/slate#3753
演示视频: https://files.catbox.moe/rwounm.mp4 (视频链接可能失效)
这是slate的一个bug,主要是由于中文输入法引起的,老外不存在这个问题,所有这个bug一直没人管
ianstormtaylor/slate#3292
https://www.zhihu.com/question/361228704/answer/937791493
谢谢, 看来短时间内 无法解决呀
谢谢, 看来短时间内 无法解决呀
这个解决方案就是监听compositionstart和compositionend,当start时如果selection是expand状态,则删除节点,可能还需要movepoint的操作,这个就根据需要了
关注,做了一个月 deaft-js,后发现这个,觉得我要换这个了,可是中文这。。。
@stfenjobs @crazyair @baijiahei 你们解决问题了吗?我也是搞slate,能否加个联系方式沟通下,我们搞个 slate 的交流群
有结论吗?你们怎么解决的?
@Q-Qplus1s 我换了别的编辑器 https://github.com/nhn/tui.editor
tui.editor 挺一般的,我还提过 PR:nhn/tui.editor#244 (只是说明轻度参与过)
水过一篇博客:2018-8-2 弃用 tui.editor 富文本编辑器的原因
https://1c7.me/2018-8-2-abandon-tui-editor/
仅供参考