diff --git a/frontend/auto-imports.d.ts b/frontend/auto-imports.d.ts index 87319db..2d82a80 100644 --- a/frontend/auto-imports.d.ts +++ b/frontend/auto-imports.d.ts @@ -3,6 +3,7 @@ // @ts-nocheck // noinspection JSUnusedGlobalSymbols // Generated by unplugin-auto-import +// biome-ignore lint: disable export {} declare global { const EffectScope: typeof import('vue')['EffectScope'] @@ -71,6 +72,6 @@ declare global { // for type re-export declare global { // @ts-ignore - export type { Component, ComponentPublicInstance, ComputedRef, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, VNode, WritableComputedRef } from 'vue' + export type { Component, ComponentPublicInstance, ComputedRef, DirectiveBinding, ExtractDefaultPropTypes, ExtractPropTypes, ExtractPublicPropTypes, InjectionKey, PropType, Ref, MaybeRef, MaybeRefOrGetter, VNode, WritableComputedRef } from 'vue' import('vue') } diff --git a/frontend/src/components/chat/ChatMessage.vue b/frontend/src/components/chat/ChatMessage.vue index 0a04b90..09f5e59 100644 --- a/frontend/src/components/chat/ChatMessage.vue +++ b/frontend/src/components/chat/ChatMessage.vue @@ -160,7 +160,7 @@
- {{ item.time }} + {{ formatTime(item.createdAt) }}
@@ -231,11 +231,18 @@ const currUserId = ref(); // 添加格式化时间的方法 - function formatTime(timestamp:string) { - const date = new Date(timestamp); + function formatTime(timestamp: string | number) { + const date = new Date(Number(timestamp)); // 确保时间戳为数字 const month = date.getMonth() + 1; // 月份是从0开始的 const day = date.getDate(); - return `${month}-${day}`; + const hours = date.getHours(); + const minutes = date.getMinutes(); + + // 格式化小时和分钟为两位数 + const formattedHours = hours.toString().padStart(2, "0"); + const formattedMinutes = minutes.toString().padStart(2, "0"); + + return `${month}-${day} ${formattedHours}:${formattedMinutes}`; } const showUserInfo = (chatId: string) => { diff --git a/frontend/src/components/chat/ChatMsgList.vue b/frontend/src/components/chat/ChatMsgList.vue index 7d15d9c..85b4f1f 100644 --- a/frontend/src/components/chat/ChatMsgList.vue +++ b/frontend/src/components/chat/ChatMsgList.vue @@ -90,7 +90,7 @@
- {{ formatTime(item.time) }} + {{ formatTime(item.item) }}
diff --git a/frontend/src/stores/chat.ts b/frontend/src/stores/chat.ts index 8a97eae..5daa9e3 100644 --- a/frontend/src/stores/chat.ts +++ b/frontend/src/stores/chat.ts @@ -279,7 +279,8 @@ export const useChatStore = defineStore('chatStore', () => { isMe: true, message: await getImageSrc(Message.message), previewMessage: "[图片消息]", - previewTimeFormat: formatTime(Date.now()), + previewTimeFormat: Date.now(), + time: Date.now(), displayName: userInfo.value.nickname, chatId: Message.type === 'group' ? targetGroupInfo.value.chatId : targetUserInfo.value.chatId, avatar: Message.type === 'group' ? targetUserInfo.value.avatar : '', @@ -347,6 +348,7 @@ export const useChatStore = defineStore('chatStore', () => { file_name: Message.message.split('/').pop(), file_size: fileInfo.data.file_info?.size || 0, previewMessage: "[文件消息]", + time: Date.now(), previewTimeFormat: formatTime(Date.now()), displayName: userInfo.value.nickname, chatId: Message.type === 'group' ? targetGroupInfo.value.chatId : targetUserInfo.value.chatId, @@ -412,8 +414,9 @@ export const useChatStore = defineStore('chatStore', () => { ...Message, isMe: true, previewMessage: message.value, - previewTimeFormat: formatTime(Date.now()), + previewTimeFormat: Date.now(), displayName: userInfo.value.nickname, + time: Date.now(), chatId: targetUserInfo.value.chatId, avatar: userInfo.value.avatar, createdAt: Date.now() @@ -426,8 +429,9 @@ export const useChatStore = defineStore('chatStore', () => { messageHistory = { ...Message, previewMessage: message.value, - previewTimeFormat: formatTime(Date.now()), + previewTimeFormat: Date.now(), displayName: targetGroupInfo.value.name, + time: Date.now(), isMe: true, chatId: targetGroupInfo.value.chatId, createdAt: Date.now() @@ -568,7 +572,8 @@ export const useChatStore = defineStore('chatStore', () => { online: user.online, toUserId: userInfo.value.id, previewMessage: message.value || "快开始打招呼吧!", - previewTimeFormat: formatTime(Date.now()), + previewTimeFormat: Date.now(), + time: Date.now(), displayName: user.nickname, }; chatList.value.push(newChat); @@ -582,9 +587,10 @@ export const useChatStore = defineStore('chatStore', () => { nickname: user.nickname, avatar: user.avatar, online: user.online, + time: Date.now(), toUserId: userInfo.value.id, previewMessage: message.value || "快开始打招呼吧!", - previewTimeFormat: formatTime(Date.now()), + previewTimeFormat: Date.now(), createdAt: Date.now(), }); @@ -744,7 +750,7 @@ export const useChatStore = defineStore('chatStore', () => { content_type: data.content_type, to_groupid: data.to_groupid, previewMessage: "", - previewTimeFormat: formatTime(Date.now()), + previewTimeFormat: Date.now(), displayName: data.userInfo.nickname, avatar: data.userInfo.avatar, createdAt: Date.now(), @@ -803,6 +809,8 @@ export const useChatStore = defineStore('chatStore', () => { } const list = await res.json() + console.log("list------", list) + if (list.data.groups == null) { list.data.groups = [] }