diff --git a/im-ui/src/components/chat/ChatBox.vue b/im-ui/src/components/chat/ChatBox.vue index 98a881f..99047e6 100644 --- a/im-ui/src/components/chat/ChatBox.vue +++ b/im-ui/src/components/chat/ChatBox.vue @@ -40,7 +40,7 @@
- +
发送
@@ -94,7 +94,8 @@ x: 0, y: 0 }, - showHistory: false // 是否显示历史聊天记录 + showHistory: false, // 是否显示历史聊天记录 + lockMessage: false // 是否锁定发送 } }, methods: { @@ -269,6 +270,7 @@ } // 填充对方id this.setTargetId(msgInfo, this.chat.targetId); + this.lockMessage = true; this.$http({ url: this.messageAction, method: 'post', @@ -281,11 +283,14 @@ msgInfo.sendId = this.$store.state.userStore.userInfo.id; msgInfo.selfSend = true; this.$store.commit("insertMessage", msgInfo); + }).finally(() => { + // 解除锁定 + this.lockMessage = false; // 保持输入框焦点 - this.$refs.sendBox.focus(); + this.$nextTick(() => this.$refs.sendBox.focus()); // 滚动到底部 this.scrollToBottom(); - }) + }); const e = window.event || arguments[0]; if (e.key === 'Enter' || e.code === 'Enter' || e.keyCode === 13) { e.returnValue = false; diff --git a/im-ui/src/components/chat/ChatPrivateVideo.vue b/im-ui/src/components/chat/ChatPrivateVideo.vue index 121d1c9..2e28baf 100644 --- a/im-ui/src/components/chat/ChatPrivateVideo.vue +++ b/im-ui/src/components/chat/ChatPrivateVideo.vue @@ -19,7 +19,6 @@ @click="cancel()">
- diff --git a/im-ui/src/components/chat/ChatTime.vue b/im-ui/src/components/chat/ChatTime.vue index f9c324f..eae222a 100644 --- a/im-ui/src/components/chat/ChatTime.vue +++ b/im-ui/src/components/chat/ChatTime.vue @@ -17,16 +17,18 @@ formatDate(){ let time = new Date(this.time); let strtime = ""; - let curTime = new Date(); - let dayDiff =curTime.getDate() - time.getDate() ; - if (time.getDate() === new Date().getDate()) { + + let todayTime = new Date(); + todayTime.setHours(0,0,0,0) + let dayDiff = Math.floor((todayTime.getTime() - time.getTime())/(24*3600*1000)) ; + if (time.getTime() > todayTime.getTime()) { strtime = time.getHours() <= 9 ? "0" + time.getHours() : time.getHours(); strtime += ":" strtime += time.getMinutes() <= 9 ? "0" + time.getMinutes() : time.getMinutes(); - } else if (dayDiff === 1) { + } else if (dayDiff < 1 ) { strtime = "昨天"; } else if (dayDiff < 7) { - strtime = `${dayDiff}天前`; + strtime = `${dayDiff+1}天前`; } else { strtime = time.getMonth()+1+"月"+time.getDate()+"日"; }