fix: 修复了企业微信会显示出id的问题 增加了新手教程提示

This commit is contained in:
xuncha
2026-01-13 17:50:56 +08:00
parent 756ee03aa0
commit cada002587
3 changed files with 90 additions and 79 deletions

4
.gitignore vendored
View File

@@ -42,6 +42,10 @@ release
# OS
Thumbs.db
# Electron dev cache
.electron/
.cache/
# 忽略 Visual Studio 临时文件夹

View File

@@ -906,7 +906,7 @@ function ChatPage(_props: ChatPageProps) {
})
}
if (payloads.length > 0) {
window.electronAPI.image.preload(payloads).catch(() => {})
window.electronAPI.image.preload(payloads).catch(() => { })
}
}, [currentSessionId, messages])
@@ -1434,7 +1434,7 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat }:
bytes[8] === 0x57 && bytes[9] === 0x45 && bytes[10] === 0x42 && bytes[11] === 0x50) {
return 'image/webp'
}
} catch {}
} catch { }
return 'image/jpeg'
}, [])
@@ -1501,7 +1501,7 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat }:
setSenderAvatarUrl(result.avatarUrl)
setSenderName(result.displayName)
}
}).catch(() => {}).finally(() => {
}).catch(() => { }).finally(() => {
senderAvatarLoading.delete(sender)
})
}
@@ -1597,7 +1597,7 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat }:
}
setImageHasUpdate(Boolean(result.hasUpdate))
}
}).catch(() => {})
}).catch(() => { })
return () => {
cancelled = true
}
@@ -1685,6 +1685,12 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat }:
// 是否有引用消息
const hasQuote = message.quotedContent && message.quotedContent.length > 0
// 去除企业微信 ID 前缀
const cleanMessageContent = (content: string) => {
if (!content) return ''
return content.replace(/^[a-zA-Z0-9]+@openim:\n?/, '')
}
// 解析混合文本和表情
const renderTextWithEmoji = (text: string) => {
if (!text) return text
@@ -1895,14 +1901,14 @@ function MessageBubble({ message, session, showTime, myAvatarUrl, isGroupChat }:
<div className="bubble-content">
<div className="quoted-message">
{message.quotedSender && <span className="quoted-sender">{message.quotedSender}</span>}
<span className="quoted-text">{renderTextWithEmoji(message.quotedContent || '')}</span>
<span className="quoted-text">{renderTextWithEmoji(cleanMessageContent(message.quotedContent || ''))}</span>
</div>
<div className="message-text">{renderTextWithEmoji(message.parsedContent)}</div>
<div className="message-text">{renderTextWithEmoji(cleanMessageContent(message.parsedContent))}</div>
</div>
)
}
// 普通消息
return <div className="bubble-content">{renderTextWithEmoji(message.parsedContent)}</div>
return <div className="bubble-content">{renderTextWithEmoji(cleanMessageContent(message.parsedContent))}</div>
}
return (

View File

@@ -506,6 +506,7 @@ function WelcomePage({ standalone = false }: WelcomePageProps) {
{dbKeyStatus && <div className="field-hint status-text">{dbKeyStatus}</div>}
<div className="field-hint"></div>
<div className="field-hint"> 10</div>
</div>
)}