From ebd567a75702d95a2223ea251b3e127ad45da577 Mon Sep 17 00:00:00 2001
From: Phoenix <64720302+Concur-max@users.noreply.github.com>
Date: Tue, 10 Jun 2025 15:03:29 +0800
Subject: [PATCH] =?UTF-8?q?fix(=E6=B6=88=E6=81=AF=E9=9D=A2=E6=9D=BF):=20?=
=?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=B6=88=E6=81=AF=E8=8F=9C=E5=8D=95=E5=92=8C?=
=?UTF-8?q?=E6=92=A4=E5=9B=9E=E6=B6=88=E6=81=AF=E6=8C=89=E9=92=AE=E7=9A=84?=
=?UTF-8?q?=E6=98=BE=E7=A4=BA=E9=80=BB=E8=BE=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
修复消息菜单中缺少的is_self_action属性设置,确保撤回消息按钮仅在自身操作时显示
调整编辑器内容处理逻辑,优化草稿保存的数据结构
---
src/components/editor/CustomEditor.vue | 35 ++++++++++++++++---
src/components/talk/message/RevokeMessage.vue | 2 +-
src/utils/auth.js | 2 +-
src/views/message/inner/panel/menu.ts | 1 +
4 files changed, 33 insertions(+), 7 deletions(-)
diff --git a/src/components/editor/CustomEditor.vue b/src/components/editor/CustomEditor.vue
index 78d3013..d18a6f4 100644
--- a/src/components/editor/CustomEditor.vue
+++ b/src/components/editor/CustomEditor.vue
@@ -132,14 +132,22 @@ const handleInput = (event) => {
// 更新HTML内容
editorHtml.value = target.innerHTML || ''
-
+ const currentEditor= parseEditorContent().items
// 后续操作
checkMention(target)
saveDraft()
emit('editor-event', {
event: 'input_event',
- data: editorContent.value
+ data: currentEditor.map(x=>{
+ let text=''
+ if(x.type===3){
+ text='[图片]'
+ }else if(x.type===1){
+ text=x.content
+ }
+ return text
+ })?.join('')
})
}
@@ -1244,17 +1252,34 @@ const saveDraft = () => {
// 获取不包含引用的内容
const contentToSave = tempDiv.textContent || ''
const htmlToSave = tempDiv.innerHTML || ''
-
+ const currentEditor= parseEditorContent().items
// 检查是否有实际内容(不包括引用)
const hasContent = contentToSave.trim().length > 0 ||
htmlToSave.includes('0) {
+ console.log('保存到草稿',currentEditor.map(x=>{
+ let text=''
+ if(x.type===3){
+ text='[图片]'
+ }else if(x.type===1){
+ text=x.content
+ }
+ return text
+ })?.join(''))
// 保存草稿到store,不包括引用数据
editorDraftStore.items[indexName.value] = JSON.stringify({
- content: contentToSave,
+ content: currentEditor.map(x=>{
+ let text=''
+ if(x.type===3){
+ text='[图片]'
+ }else if(x.type===1){
+ text=x.content
+ }
+ return text
+ })?.join(''),
html: htmlToSave
})
} else {
diff --git a/src/components/talk/message/RevokeMessage.vue b/src/components/talk/message/RevokeMessage.vue
index caf96c0..77b8942 100644
--- a/src/components/talk/message/RevokeMessage.vue
+++ b/src/components/talk/message/RevokeMessage.vue
@@ -45,7 +45,7 @@ const onRevoke = () => {