From 3355900bd339583d0ca3953a4e3dd6fb5ee96ca6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=A1=97=E8=A7=92=E5=B0=8F=E6=9E=97?= <1013335014@qq.com> Date: Fri, 31 May 2024 15:08:31 +0800 Subject: [PATCH] =?UTF-8?q?Fix=EF=BC=9A=E4=BF=AE=E5=A4=8D=E5=A4=8D?= =?UTF-8?q?=E5=88=B6=E5=B8=A6=E6=8D=A2=E8=A1=8C=E7=AC=A6=E7=9A=84=E8=8A=82?= =?UTF-8?q?=E7=82=B9=E6=96=87=E6=9C=AC=E7=B2=98=E8=B4=B4=E5=90=8E=E4=BC=9A?= =?UTF-8?q?=E5=87=BA=E7=8E=B0=E5=A4=9A=E8=A1=8C=E6=8D=A2=E8=A1=8C=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- simple-mind-map/src/plugins/RichText.js | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/simple-mind-map/src/plugins/RichText.js b/simple-mind-map/src/plugins/RichText.js index aee60138..7e66549d 100644 --- a/simple-mind-map/src/plugins/RichText.js +++ b/simple-mind-map/src/plugins/RichText.js @@ -9,7 +9,8 @@ import { isUndef, checkSmmFormatData, removeHtmlNodeByClass, - formatGetNodeGeneralization + formatGetNodeGeneralization, + nodeRichTextToTextWithWrap } from '../utils' import { CONSTANTS } from '../constants/constant' @@ -365,6 +366,21 @@ class RichText { }, theme: 'snow' }) + // 拦截粘贴事件 + this.quill.root.addEventListener('copy', event => { + event.preventDefault() + const sel = window.getSelection() + const originStr = sel.toString() + try { + const range = sel.getRangeAt(0) + const div = document.createElement('div') + div.appendChild(range.cloneContents()) + const text = nodeRichTextToTextWithWrap(div.innerHTML) + event.clipboardData.setData('text/plain', text) + } catch (e) { + event.clipboardData.setData('text/plain', originStr) + } + }) this.quill.on('selection-change', range => { // 刚创建的节点全选不需要显示操作条 if (this.isInserting) return