修复进去提示bug

This commit is contained in:
2025-07-07 17:20:37 +08:00
parent 4034c908b2
commit 7b74e7a331

View File

@@ -230,8 +230,11 @@ export const bytesToSize = (bytes) => {
export const tipMessaggeFormat = (msg, currentUserID) => { export const tipMessaggeFormat = (msg, currentUserID) => {
const getName = (user) => const getName = (user) => {
user.userID === currentUserID ? "你" : user.nickname; if (!user) return "未知用户";
if (user.userID === currentUserID) return "你";
return user.nickname || user.userID || "未知用户";
};
switch (msg.contentType) { switch (msg.contentType) {
case MessageType.FriendAdded: case MessageType.FriendAdded:
@@ -243,26 +246,26 @@ export const tipMessaggeFormat = (msg, currentUserID) => {
case MessageType.GroupInfoUpdated: case MessageType.GroupInfoUpdated:
const groupUpdateDetail = JSON.parse(msg.notificationElem.detail); const groupUpdateDetail = JSON.parse(msg.notificationElem.detail);
const groupUpdateUser = groupUpdateDetail.opUser; const groupUpdateUser = groupUpdateDetail.opUser;
return `${parseInfo(groupUpdateUser)}修改了群信息`; return `${getName(groupUpdateUser)}修改了群信息`;
case MessageType.GroupOwnerTransferred: case MessageType.GroupOwnerTransferred:
const transferDetails = JSON.parse(msg.notificationElem.detail); const transferDetails = JSON.parse(msg.notificationElem.detail);
const transferOpUser = transferDetails.opUser; const transferOpUser = transferDetails.opUser;
const newOwner = transferDetails.newGroupOwner; const newOwner = transferDetails.newGroupOwner;
return `${parseInfo(transferOpUser)}转让群主给${parseInfo(newOwner)}`; return `${getName(transferOpUser)}转让群主给${getName(newOwner)}`;
case MessageType.MemberQuit: case MessageType.MemberQuit:
const quitDetails = JSON.parse(msg.notificationElem.detail); const quitDetails = JSON.parse(msg.notificationElem.detail);
const quitUser = quitDetails.quitUser; const quitUser = quitDetails.quitUser;
return `${parseInfo(quitUser)}退出了群组`; return `${getName(quitUser)}退出了群组`;
case MessageType.MemberInvited: case MessageType.MemberInvited:
const inviteDetails = JSON.parse(msg.notificationElem.detail); const inviteDetails = JSON.parse(msg.notificationElem.detail);
const inviteOpUser = inviteDetails.opUser; const inviteOpUser = inviteDetails.opUser;
const invitedUserList = inviteDetails.invitedUserList ?? []; const invitedUserList = inviteDetails.invitedUserList ?? [];
let inviteStr = ""; let inviteStr = "";
invitedUserList.find( invitedUserList.find(
(user, idx) => (inviteStr += parseInfo(user) + "、") && idx > 3, (user, idx) => (inviteStr += getName(user) + "、") && idx > 3,
); );
inviteStr = inviteStr.slice(0, -1); inviteStr = inviteStr.slice(0, -1);
return `${parseInfo(inviteOpUser)} 邀请了${inviteStr}${ return `${getName(inviteOpUser)} 邀请了${inviteStr}${
invitedUserList.length > 3 ? "..." : "" invitedUserList.length > 3 ? "..." : ""
}加入群聊`; }加入群聊`;
case MessageType.MemberKicked: case MessageType.MemberKicked:
@@ -271,20 +274,20 @@ export const tipMessaggeFormat = (msg, currentUserID) => {
const kickdUserList = kickDetails.kickedUserList ?? []; const kickdUserList = kickDetails.kickedUserList ?? [];
let kickStr = ""; let kickStr = "";
kickdUserList.find( kickdUserList.find(
(user, idx) => (kickStr += parseInfo(user) + "、") && idx > 3, (user, idx) => (kickStr += getName(user) + "、") && idx > 3,
); );
kickStr = kickStr.slice(0, -1); kickStr = kickStr.slice(0, -1);
return `${parseInfo(kickOpUser)} 踢出了${kickStr}${ return `${getName(kickOpUser)} 踢出了${kickStr}${
kickdUserList.length > 3 ? "..." : "" kickdUserList.length > 3 ? "..." : ""
}`; }`;
case MessageType.MemberEnter: case MessageType.MemberEnter:
const enterDetails = JSON.parse(msg.notificationElem.detail); const enterDetails = JSON.parse(msg.notificationElem.detail);
const enterUser = enterDetails.entrantUser; const enterUser = enterDetails.entrantUser;
return `${parseInfo(enterUser)}加入了群聊`; return `${getName(enterUser)}加入了群聊`;
case MessageType.GroupDismissed: case MessageType.GroupDismissed:
const dismissDetails = JSON.parse(msg.notificationElem.detail); const dismissDetails = JSON.parse(msg.notificationElem.detail);
const dismissUser = dismissDetails.opUser; const dismissUser = dismissDetails.opUser;
return `${parseInfo(dismissUser)}解散了群聊`; return `${getName(dismissUser)}解散了群聊`;
default: default:
return ""; return "";
} }