聊天室
This commit is contained in:
parent
2a74d067db
commit
a95b78aefd
|
@ -79,6 +79,8 @@
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
import * as websocketUtils from 'utils/websocketUtils.js';
|
import * as websocketUtils from 'utils/websocketUtils.js';
|
||||||
|
import { compile } from "vue";
|
||||||
|
const maxReconnectMaxCn = 30;
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
@ -140,7 +142,9 @@
|
||||||
],
|
],
|
||||||
//表情图片图床名称 ,由于我上传的第三方图床名称会有改变,所以有此数据来做对应,您实际应用中应该不需要
|
//表情图片图床名称 ,由于我上传的第三方图床名称会有改变,所以有此数据来做对应,您实际应用中应该不需要
|
||||||
onlineEmoji:{"100.gif":"AbNQgA.gif","101.gif":"AbN3ut.gif","102.gif":"AbNM3d.gif","103.gif":"AbN8DP.gif","104.gif":"AbNljI.gif","105.gif":"AbNtUS.gif","106.gif":"AbNGHf.gif","107.gif":"AbNYE8.gif","108.gif":"AbNaCQ.gif","109.gif":"AbNN4g.gif","110.gif":"AbN0vn.gif","111.gif":"AbNd3j.gif","112.gif":"AbNsbV.gif","113.gif":"AbNwgs.gif","114.gif":"AbNrD0.gif","115.gif":"AbNDuq.gif","116.gif":"AbNg5F.gif","117.gif":"AbN6ET.gif","118.gif":"AbNcUU.gif","119.gif":"AbNRC4.gif","120.gif":"AbNhvR.gif","121.gif":"AbNf29.gif","122.gif":"AbNW8J.gif","123.gif":"AbNob6.gif","124.gif":"AbN5K1.gif","125.gif":"AbNHUO.gif","126.gif":"AbNIDx.gif","127.gif":"AbN7VK.gif","128.gif":"AbNb5D.gif","129.gif":"AbNX2d.gif","130.gif":"AbNLPe.gif","131.gif":"AbNjxA.gif","132.gif":"AbNO8H.gif","133.gif":"AbNxKI.gif","134.gif":"AbNzrt.gif","135.gif":"AbU9Vf.gif","136.gif":"AbUSqP.gif","137.gif":"AbUCa8.gif","138.gif":"AbUkGQ.gif","139.gif":"AbUFPg.gif","140.gif":"AbUPIS.gif","141.gif":"AbUZMn.gif","142.gif":"AbUExs.gif","143.gif":"AbUA2j.gif","144.gif":"AbUMIU.gif","145.gif":"AbUerq.gif","146.gif":"AbUKaT.gif","147.gif":"AbUmq0.gif","148.gif":"AbUuZV.gif","149.gif":"AbUliF.gif","150.gif":"AbU1G4.gif","151.gif":"AbU8z9.gif","152.gif":"AbU3RJ.gif","153.gif":"AbUYs1.gif","154.gif":"AbUJMR.gif","155.gif":"AbUadK.gif","156.gif":"AbUtqx.gif","157.gif":"AbUUZ6.gif","158.gif":"AbUBJe.gif","159.gif":"AbUdIO.gif","160.gif":"AbU0iD.gif","161.gif":"AbUrzd.gif","162.gif":"AbUDRH.gif","163.gif":"AbUyQA.gif","164.gif":"AbUWo8.gif","165.gif":"AbU6sI.gif","166.gif":"AbU2eP.gif","167.gif":"AbUcLt.gif","168.gif":"AbU4Jg.gif","169.gif":"AbURdf.gif","170.gif":"AbUhFS.gif","171.gif":"AbU5WQ.gif","172.gif":"AbULwV.gif","173.gif":"AbUIzj.gif","174.gif":"AbUTQs.gif","175.gif":"AbU7yn.gif","176.gif":"AbUqe0.gif","177.gif":"AbUHLq.gif","178.gif":"AbUOoT.gif","179.gif":"AbUvYF.gif","180.gif":"AbUjFU.gif","181.gif":"AbaSSJ.gif","182.gif":"AbUxW4.gif","183.gif":"AbaCO1.gif","184.gif":"Abapl9.gif","185.gif":"Aba9yR.gif","186.gif":"AbaFw6.gif","187.gif":"Abaiex.gif","188.gif":"AbakTK.gif","189.gif":"AbaZfe.png","190.gif":"AbaEFO.gif","191.gif":"AbaVYD.gif","192.gif":"AbamSH.gif","193.gif":"AbaKOI.gif","194.gif":"Abanld.gif","195.gif":"Abau6A.gif","196.gif":"AbaQmt.gif","197.gif":"Abal0P.gif","198.gif":"AbatpQ.gif","199.gif":"Aba1Tf.gif","200.png":"Aba8k8.png","201.png":"AbaGtS.png","202.png":"AbaJfg.png","203.png":"AbaNlj.png","204.png":"Abawmq.png","205.png":"AbaU6s.png","206.png":"AbaaXn.png","207.png":"Aba000.png","208.png":"AbarkT.png","209.png":"AbastU.png","210.png":"AbaB7V.png","211.png":"Abafn1.png","212.png":"Abacp4.png","213.png":"AbayhF.png","214.png":"Abag1J.png","215.png":"Aba2c9.png","216.png":"AbaRXR.png","217.png":"Aba476.png","218.png":"Abah0x.png","219.png":"Abdg58.png"},
|
onlineEmoji:{"100.gif":"AbNQgA.gif","101.gif":"AbN3ut.gif","102.gif":"AbNM3d.gif","103.gif":"AbN8DP.gif","104.gif":"AbNljI.gif","105.gif":"AbNtUS.gif","106.gif":"AbNGHf.gif","107.gif":"AbNYE8.gif","108.gif":"AbNaCQ.gif","109.gif":"AbNN4g.gif","110.gif":"AbN0vn.gif","111.gif":"AbNd3j.gif","112.gif":"AbNsbV.gif","113.gif":"AbNwgs.gif","114.gif":"AbNrD0.gif","115.gif":"AbNDuq.gif","116.gif":"AbNg5F.gif","117.gif":"AbN6ET.gif","118.gif":"AbNcUU.gif","119.gif":"AbNRC4.gif","120.gif":"AbNhvR.gif","121.gif":"AbNf29.gif","122.gif":"AbNW8J.gif","123.gif":"AbNob6.gif","124.gif":"AbN5K1.gif","125.gif":"AbNHUO.gif","126.gif":"AbNIDx.gif","127.gif":"AbN7VK.gif","128.gif":"AbNb5D.gif","129.gif":"AbNX2d.gif","130.gif":"AbNLPe.gif","131.gif":"AbNjxA.gif","132.gif":"AbNO8H.gif","133.gif":"AbNxKI.gif","134.gif":"AbNzrt.gif","135.gif":"AbU9Vf.gif","136.gif":"AbUSqP.gif","137.gif":"AbUCa8.gif","138.gif":"AbUkGQ.gif","139.gif":"AbUFPg.gif","140.gif":"AbUPIS.gif","141.gif":"AbUZMn.gif","142.gif":"AbUExs.gif","143.gif":"AbUA2j.gif","144.gif":"AbUMIU.gif","145.gif":"AbUerq.gif","146.gif":"AbUKaT.gif","147.gif":"AbUmq0.gif","148.gif":"AbUuZV.gif","149.gif":"AbUliF.gif","150.gif":"AbU1G4.gif","151.gif":"AbU8z9.gif","152.gif":"AbU3RJ.gif","153.gif":"AbUYs1.gif","154.gif":"AbUJMR.gif","155.gif":"AbUadK.gif","156.gif":"AbUtqx.gif","157.gif":"AbUUZ6.gif","158.gif":"AbUBJe.gif","159.gif":"AbUdIO.gif","160.gif":"AbU0iD.gif","161.gif":"AbUrzd.gif","162.gif":"AbUDRH.gif","163.gif":"AbUyQA.gif","164.gif":"AbUWo8.gif","165.gif":"AbU6sI.gif","166.gif":"AbU2eP.gif","167.gif":"AbUcLt.gif","168.gif":"AbU4Jg.gif","169.gif":"AbURdf.gif","170.gif":"AbUhFS.gif","171.gif":"AbU5WQ.gif","172.gif":"AbULwV.gif","173.gif":"AbUIzj.gif","174.gif":"AbUTQs.gif","175.gif":"AbU7yn.gif","176.gif":"AbUqe0.gif","177.gif":"AbUHLq.gif","178.gif":"AbUOoT.gif","179.gif":"AbUvYF.gif","180.gif":"AbUjFU.gif","181.gif":"AbaSSJ.gif","182.gif":"AbUxW4.gif","183.gif":"AbaCO1.gif","184.gif":"Abapl9.gif","185.gif":"Aba9yR.gif","186.gif":"AbaFw6.gif","187.gif":"Abaiex.gif","188.gif":"AbakTK.gif","189.gif":"AbaZfe.png","190.gif":"AbaEFO.gif","191.gif":"AbaVYD.gif","192.gif":"AbamSH.gif","193.gif":"AbaKOI.gif","194.gif":"Abanld.gif","195.gif":"Abau6A.gif","196.gif":"AbaQmt.gif","197.gif":"Abal0P.gif","198.gif":"AbatpQ.gif","199.gif":"Aba1Tf.gif","200.png":"Aba8k8.png","201.png":"AbaGtS.png","202.png":"AbaJfg.png","203.png":"AbaNlj.png","204.png":"Abawmq.png","205.png":"AbaU6s.png","206.png":"AbaaXn.png","207.png":"Aba000.png","208.png":"AbarkT.png","209.png":"AbastU.png","210.png":"AbaB7V.png","211.png":"Abafn1.png","212.png":"Abacp4.png","213.png":"AbayhF.png","214.png":"Abag1J.png","215.png":"Aba2c9.png","216.png":"AbaRXR.png","217.png":"Aba476.png","218.png":"Abah0x.png","219.png":"Abdg58.png"},
|
||||||
|
webSocketTask:null,
|
||||||
timer:null,
|
timer:null,
|
||||||
|
reconnectCn: 1
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
onLoad(d) {
|
onLoad(d) {
|
||||||
|
@ -163,17 +167,29 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.timer = setInterval(() => {
|
// this.timer = setInterval(() => {
|
||||||
this.getTimeOrListItem1()
|
// this.getTimeOrListItem1();
|
||||||
}, 3000);
|
// }, 3000);
|
||||||
},
|
},
|
||||||
onUnload() {
|
onUnload() {
|
||||||
|
// uni.closeSocket({
|
||||||
|
// success: () => {
|
||||||
|
// console.info("退出成功")
|
||||||
|
// },
|
||||||
|
// })
|
||||||
|
// this.webSocketTask.close({
|
||||||
|
// code:500,
|
||||||
|
// complete:(res)=>{
|
||||||
|
// console.log("主动断开",res);
|
||||||
|
// }
|
||||||
|
// });
|
||||||
|
this.reconnectCn = 101;
|
||||||
uni.closeSocket({
|
uni.closeSocket({
|
||||||
success: () => {
|
code:500,
|
||||||
console.info("退出成功")
|
complete:(res)=>{
|
||||||
},
|
console.log("主动断开",res);
|
||||||
|
}
|
||||||
})
|
})
|
||||||
// uni.closeSocket()
|
|
||||||
uni.hideLoading();
|
uni.hideLoading();
|
||||||
clearInterval(this.timer);
|
clearInterval(this.timer);
|
||||||
this.timer = null;
|
this.timer = null;
|
||||||
|
@ -246,11 +262,11 @@
|
||||||
connect() {
|
connect() {
|
||||||
let that = this;
|
let that = this;
|
||||||
let userId = that.$queue.getData('userId');
|
let userId = that.$queue.getData('userId');
|
||||||
if (that.connected || that.connecting) {
|
if (that.connected && that.connecting) {
|
||||||
uni.showModal({
|
// uni.showModal({
|
||||||
content: '正在连接或者已经连接,请勿重复连接',
|
// content: '正在连接或者已经连接,请勿重复连接',
|
||||||
showCancel: false
|
// showCancel: false
|
||||||
})
|
// })
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
that.connecting = true
|
that.connecting = true
|
||||||
|
@ -279,8 +295,8 @@
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
uni.onSocketOpen((res) => {
|
uni.onSocketOpen((res) => {
|
||||||
that.connecting = false
|
// that.connecting = false
|
||||||
that.connected = true
|
// that.connected = true
|
||||||
uni.hideLoading()
|
uni.hideLoading()
|
||||||
// uni.showToast({
|
// uni.showToast({
|
||||||
// icon: 'none',
|
// icon: 'none',
|
||||||
|
@ -292,25 +308,28 @@
|
||||||
that.connecting = false
|
that.connecting = false
|
||||||
that.connected = false
|
that.connected = false
|
||||||
uni.hideLoading()
|
uni.hideLoading()
|
||||||
uni.showModal({
|
// uni.showModal({
|
||||||
content: '网络较差,请稍后再试',
|
// content: '网络较差,请稍后再试',
|
||||||
showCancel: false
|
// showCancel: false
|
||||||
})
|
// })
|
||||||
console.log('onError', err);
|
console.log('onError', err);
|
||||||
});
|
});
|
||||||
uni.onSocketMessage(function (res) {
|
uni.onSocketMessage(function (res) {
|
||||||
console.log('收到服务器内容:' + JSON.stringify(res));
|
console.log('收到服务器内容:' + JSON.stringify(res));
|
||||||
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
|
that.hideDrawer();
|
||||||
that.getTimeOrListItem1();
|
that.getTimeOrListItem1();
|
||||||
}, 50);
|
}, 50);
|
||||||
|
|
||||||
});
|
});
|
||||||
uni.onSocketClose((res) => {
|
uni.onSocketClose((res) => {
|
||||||
that.connected = false
|
that.connected = false
|
||||||
that.startRecive = false
|
that.startRecive = false
|
||||||
that.msg = false
|
that.msg = false
|
||||||
console.log('onClose', res)
|
console.log('onClose', res)
|
||||||
|
if(this.reconnectCn<maxReconnectMaxCn){
|
||||||
|
this.reconnectCn = this.reconnectCn + 1;
|
||||||
|
this.connect();
|
||||||
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
close() {
|
close() {
|
||||||
|
@ -319,6 +338,7 @@
|
||||||
|
|
||||||
// 加载初始页面消息
|
// 加载初始页面消息
|
||||||
getTimeOrListItem1() {
|
getTimeOrListItem1() {
|
||||||
|
console.log("im:getTimeOrListItem1");
|
||||||
this.$Request.get('/app/chat/selectChatContent?page=1&limit=1000&chatConversationId=' + this.chatConversationId).then(
|
this.$Request.get('/app/chat/selectChatContent?page=1&limit=1000&chatConversationId=' + this.chatConversationId).then(
|
||||||
res => {
|
res => {
|
||||||
this.ListItem = [];
|
this.ListItem = [];
|
||||||
|
@ -333,7 +353,7 @@
|
||||||
}
|
}
|
||||||
this.ListItem.push(d);
|
this.ListItem.push(d);
|
||||||
});
|
});
|
||||||
this.ListItem = this.ListItem.reverse();;
|
this.ListItem = this.ListItem.reverse();
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
uni.pageScrollTo({
|
uni.pageScrollTo({
|
||||||
scrollTop: 99999,
|
scrollTop: 99999,
|
||||||
|
@ -368,7 +388,6 @@
|
||||||
if (!phone) {
|
if (!phone) {
|
||||||
phone = this.$queue.getData('userName');
|
phone = this.$queue.getData('userName');
|
||||||
}
|
}
|
||||||
console.log("this.byUserId",this.byUserId)
|
|
||||||
// if(this.textMsg!=''){
|
// if(this.textMsg!=''){
|
||||||
// const isRich = this.isRichText(this.textMsg); // 返回 true
|
// const isRich = this.isRichText(this.textMsg); // 返回 true
|
||||||
// if(isRich==true){
|
// if(isRich==true){
|
||||||
|
@ -377,20 +396,16 @@
|
||||||
// this.content=this.textMsg
|
// this.content=this.textMsg
|
||||||
// }
|
// }
|
||||||
// }
|
// }
|
||||||
|
|
||||||
|
|
||||||
// console.log('this.content=============>',isRich)
|
// console.log('this.content=============>',isRich)
|
||||||
let data = {
|
let data = {
|
||||||
content: this.content,
|
content: this.content,
|
||||||
messageType: type,
|
messageType: type,
|
||||||
userId: this.byUserId,
|
userId: this.byUserId,
|
||||||
chatConversationId: this.chatConversationId,
|
chatConversationId: this.chatConversationId,
|
||||||
|
|
||||||
}
|
}
|
||||||
if(data.messageType==2){
|
if(data.messageType==2){
|
||||||
data.width="100"
|
data.width="100"
|
||||||
}
|
}
|
||||||
console.log("data",data)
|
|
||||||
data = JSON.stringify(data);
|
data = JSON.stringify(data);
|
||||||
|
|
||||||
let that = this;
|
let that = this;
|
||||||
|
@ -410,15 +425,16 @@
|
||||||
type: type,
|
type: type,
|
||||||
userId: userId
|
userId: userId
|
||||||
}
|
}
|
||||||
console.log(data,'data99999999999999999')
|
// console.log(data,'data99999999999999999')
|
||||||
// that.ListItem.push(data);
|
// that.ListItem.push(data);
|
||||||
setTimeout(() => {
|
// setTimeout(() => {
|
||||||
that.hideDrawer();
|
// that.hideDrawer();
|
||||||
that.getTimeOrListItem1();
|
// that.getTimeOrListItem1();
|
||||||
}, 50);
|
// }, 500);
|
||||||
console.log(that.content);
|
// console.log(that.content);
|
||||||
},
|
},
|
||||||
fail(err) {
|
fail(err) {
|
||||||
|
that.connect();
|
||||||
console.log(err);
|
console.log(err);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
Loading…
Reference in New Issue