小程序里接入了腾讯im的单对单的私信聊天,同时在直播中接入了弹幕群组聊天功能;
BUG描述:当在直播中游客端进行发消息时,进入到单对单的会话聊天列表就会同时出现一条匿名的消息如图第一条消息,第二条的那个「群系统通知」是游客端进入直播间加入群组时腾讯im那边进入群组后的提示的“我来了”的提示,这两条是不应该出现在这里的,这里只是单对单的会话列表
这个会话列表调用的接口是:
tim.getConversationList().then(function(resData) {
console.log(resData)
that.setData({
conversationList:resData.data.conversationList
})
});
tim.on(TIM.EVENT.CONVERSATION_LIST_UPDATED, (event) => {
that.setData({
conversationList: event.data
});
})
这样我打印了resData后发现会话列表是包括单对单聊天和群组聊天的,这样的话就需要在获取到会话列表接口数据时进行判断过滤操作:
tim.getConversationList().then(function(resData) {
var conversationList = that.data.conversationList
resData.data.conversationList.forEach(item=>{
if (item.type == "C2C"){
conversationList.push(item)
}
that.setData({
conversationList
})
})
});
这样就可以了。