移除MessageList组件中的调试日志,新增通过ID查找消息的功能,优化消息处理逻辑,提升代码可读性和用户体验。
This commit is contained in:
@@ -12,6 +12,7 @@ const addMessage = useWeChatStore.getState().addMessage;
|
||||
const recallMessage = useWeChatStore.getState().recallMessage;
|
||||
const receivedMsg = useWeChatStore.getState().receivedMsg;
|
||||
const findMessageBySeq = useWeChatStore.getState().findMessageBySeq;
|
||||
const findMessageById = useWeChatStore.getState().findMessageById;
|
||||
const updateMessage = useWeChatStore.getState().updateMessage;
|
||||
const updateMomentCommonLoading =
|
||||
useWeChatStore.getState().updateMomentCommonLoading;
|
||||
@@ -43,6 +44,7 @@ const messageHandlers: Record<string, MessageHandler> = {
|
||||
},
|
||||
// 发送消息响应
|
||||
CmdSendMessageResp: message => {
|
||||
console.log("CmdSendMessageResp", message);
|
||||
const msg = findMessageBySeq(message.seq);
|
||||
if (msg) {
|
||||
updateMessage(message.seq, {
|
||||
@@ -127,10 +129,10 @@ const messageHandlers: Record<string, MessageHandler> = {
|
||||
try {
|
||||
// 被踢出时删除所有缓存数据
|
||||
localStorage.clear();
|
||||
await db.kfUsers.clear();
|
||||
await db.weChatGroup.clear();
|
||||
await db.contracts.clear();
|
||||
await db.newContactList.clear();
|
||||
await db.chatSessions.clear();
|
||||
await db.contactsUnified.clear();
|
||||
await db.contactLabelMap.clear();
|
||||
await db.userLoginRecords.clear();
|
||||
} finally {
|
||||
(window as any).__CKB_AUTH_FAILED_SHOWN__ = false;
|
||||
window.location.href = "/login";
|
||||
@@ -145,12 +147,30 @@ const messageHandlers: Record<string, MessageHandler> = {
|
||||
CmdMessageRecalled: message => {
|
||||
const MessageId = message.friendMessageId || message.chatroomMessageId;
|
||||
recallMessage(MessageId);
|
||||
// {
|
||||
// "friendMessageId": 745007874,
|
||||
// "chatroomMessageId": 0,
|
||||
// "seq": 2076470,
|
||||
// "cmdType": "CmdMessageRecalled"
|
||||
},
|
||||
|
||||
CmdVoiceToTextResult: message => {
|
||||
const msg = findMessageById(
|
||||
message.friendMessageId || message.chatroomMessageId,
|
||||
);
|
||||
console.log("CmdVoiceToTextResult", msg);
|
||||
const content = JSON.parse(msg.content);
|
||||
if (msg) {
|
||||
updateMessage(msg.id, {
|
||||
content: JSON.stringify({
|
||||
...content,
|
||||
text: message.text,
|
||||
}),
|
||||
});
|
||||
}
|
||||
// {
|
||||
// "friendMessageId":753361041,
|
||||
// "chatroomMessageId":0,
|
||||
// "text":"以后我会好好对待你。",
|
||||
// "seq":76698,
|
||||
// "cmdType":"CmdVoiceToTextResult"
|
||||
// }
|
||||
console.log("CmdVoiceToTextResult", message);
|
||||
},
|
||||
|
||||
// 可以继续添加更多处理器...
|
||||
|
||||
Reference in New Issue
Block a user