|
@@ -2206,37 +2206,75 @@ export default {
|
|
|
const message = JSON.parse(event.data);
|
|
|
console.log("监听消息:",message)
|
|
|
|
|
|
- if(Number(this.receiverId) == Number(message.receiver_id)){
|
|
|
- //如果message的receiverId和会话的receiverId一致,说明这条信息是自己发的回显
|
|
|
- let receiveMessage = {
|
|
|
- action:"said",//是谁说的
|
|
|
- user_avatar:message.user_avatar,//头像
|
|
|
- content:message.content,//内容
|
|
|
- msg_type:message.msg_type,//消息类型
|
|
|
- }
|
|
|
- console.log("回显自己的消息:"+this.receiverId,message.receiver_id)
|
|
|
- console.log(message)
|
|
|
- //消息添加到聊天记录
|
|
|
- this.chatrecords.push(receiveMessage);
|
|
|
- // 确保 Vue 能够检测到数组的变化
|
|
|
- //this.$set(this.chatrecords, this.chatrecords.length, receiveMessage);
|
|
|
- console.log(this.chatrecords)
|
|
|
- //滚动条滚动到底部
|
|
|
- this.scorllBottom();
|
|
|
- }else if(Number(this.receiverId) == Number(message.user_id)){
|
|
|
- let receiveMessage = {
|
|
|
- action:"recieved",//是谁说的
|
|
|
- receiver_avatar:message.user_avatar,//头像
|
|
|
- content:message.content,//内容
|
|
|
- msg_type:message.msg_type,//消息类型
|
|
|
- }
|
|
|
- //如果message的receiverId和会话的receiverId不一致,说明这条信息是别人发的,需要添加到聊天记录
|
|
|
- //消息添加到聊天记录
|
|
|
- console.log("来自单聊消息:"+this.receiverId,message.user_id)
|
|
|
- this.chatrecords.push(receiveMessage);
|
|
|
- console.log(message)
|
|
|
- //滚动条滚动到底部
|
|
|
- this.scorllBottom();
|
|
|
+ //先判断是否为群消息
|
|
|
+ if (message.receiver_id.length == 18) {
|
|
|
+ //18位就是群聊
|
|
|
+ if(Number(this.myUserId) == Number(message.user_id)){
|
|
|
+ //如果message的receiverId和会话的receiverId一致,说明这条信息是自己发的回显
|
|
|
+ let receiveMessage = {
|
|
|
+ action:"said",//自己说的
|
|
|
+ user_avatar:message.user_avatar,//头像
|
|
|
+ content:message.content,//内容
|
|
|
+ msg_type:message.msg_type,//消息类型
|
|
|
+ }
|
|
|
+ console.log("来自单聊的回显消息:"+this.receiverId,message.receiver_id)
|
|
|
+ console.log(message)
|
|
|
+ //消息添加到聊天记录
|
|
|
+ this.chatrecords.push(receiveMessage);
|
|
|
+ // 确保 Vue 能够检测到数组的变化
|
|
|
+ //this.$set(this.chatrecords, this.chatrecords.length, receiveMessage);
|
|
|
+ console.log(this.chatrecords)
|
|
|
+ //滚动条滚动到底部
|
|
|
+ this.scorllBottom();
|
|
|
+ }else{
|
|
|
+ let receiveMessage = {
|
|
|
+ action:"recieved",//对方说的
|
|
|
+ receiver_avatar:message.user_avatar,//头像
|
|
|
+ content:message.content,//内容
|
|
|
+ msg_type:message.msg_type,//消息类型
|
|
|
+ }
|
|
|
+ //如果message的receiverId和会话的receiverId不一致,说明这条信息是别人发的,需要添加到聊天记录
|
|
|
+ //消息添加到聊天记录
|
|
|
+ console.log("来自单聊消息:"+this.receiverId,message.user_id)
|
|
|
+ this.chatrecords.push(receiveMessage);
|
|
|
+ console.log(message)
|
|
|
+ //滚动条滚动到底部
|
|
|
+ this.scorllBottom();
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ //非18位是单聊
|
|
|
+ if(Number(this.myUserId) == Number(message.user_id)){
|
|
|
+ //如果message的receiverId和会话的receiverId一致,说明这条信息是自己发的回显
|
|
|
+ let receiveMessage = {
|
|
|
+ action:"said",//自己说的
|
|
|
+ user_avatar:message.user_avatar,//头像
|
|
|
+ content:message.content,//内容
|
|
|
+ msg_type:message.msg_type,//消息类型
|
|
|
+ }
|
|
|
+ console.log("来自单聊的回显消息:"+this.receiverId,message.receiver_id)
|
|
|
+ console.log(message)
|
|
|
+ //消息添加到聊天记录
|
|
|
+ this.chatrecords.push(receiveMessage);
|
|
|
+ // 确保 Vue 能够检测到数组的变化
|
|
|
+ //this.$set(this.chatrecords, this.chatrecords.length, receiveMessage);
|
|
|
+ console.log(this.chatrecords)
|
|
|
+ //滚动条滚动到底部
|
|
|
+ this.scorllBottom();
|
|
|
+ }else{
|
|
|
+ let receiveMessage = {
|
|
|
+ action:"recieved",//对方说的
|
|
|
+ receiver_avatar:message.user_avatar,//头像
|
|
|
+ content:message.content,//内容
|
|
|
+ msg_type:message.msg_type,//消息类型
|
|
|
+ }
|
|
|
+ //如果message的receiverId和会话的receiverId不一致,说明这条信息是别人发的,需要添加到聊天记录
|
|
|
+ //消息添加到聊天记录
|
|
|
+ console.log("来自单聊消息:"+this.receiverId,message.user_id)
|
|
|
+ this.chatrecords.push(receiveMessage);
|
|
|
+ console.log(message)
|
|
|
+ //滚动条滚动到底部
|
|
|
+ this.scorllBottom();
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
},
|