vue+tiptap 搜狗输入法导致提及失去焦点问题

4 阅读1分钟

搜狗输入法在触发输入法候选弹窗时,会在鼠标事件上产生额外的“组合”或“合成”行为,导致编辑器在点击选项时临时失焦,进而使提及逻辑中断。解决这一问题的一种常见方法是阻止点击时默认的焦点切换行为。 解决方法:在提及候选项(比如弹窗里的列表项)的点击事件上添加 @mousedown.prevent(或在事件处理函数中调用 event.preventDefault()),可以避免在点击时编辑器失去焦点。

<!-- 假设这是候选项的模板 -->
<li v-for="item in suggestions" :key="item.id" @mousedown.prevent="selectItem(item)" > 
{{ item.label }} 
</li>