需求:私信拉粉丝群 功能已实现但设计稿不详
card2 判断是否为为未加群逻辑
card2 都是解析连接的
先判断该链接是否为群
//判断是否是群链 群连接 weibo.com/p/230491${群id}
为群再使用群id获取群成员列表遍历是否在该群中,不在该群便弹出二维码。
添加了 modal4
主要是二维码的模态框
* 二维码配置
* 详情见 https://github.com/davidshimjs/qrcodejs
* npm i qrcodejs2 https://www.npmjs.com/package/qrcodejs2
vux 添加
qrcode: ‘’, *//群二维码
1 | //操作二维码(qrcode) |
sync_double 分支
1、群消息免打扰
1-1 群消息免打扰功能,Web和App进行设置两边数据同步。【完成1】
1-2 右键出现气泡,气泡第一条:“查看群资料”,点击打开群信息弹窗,第二条:“群消息免打扰”/“打开群消息通知”,第三条“删除对话”,和线上逻辑一致。【完成1】
1-3 若点击“查看群资料”,回默认切换至当前聊天室,然后打开当前群的群资料弹窗。【完成1】
1-4 设置为“群消息免打扰”后,userlist第二条栏目显示规则:
[x条未读]+最新的一条消息+橙点(没有未读时显示免打扰icon【此icon还未使用最新设计稿icon】)【完成0.8】
2、群消息免打扰功能【调整icon位置及大小未作】【完成0】
3、群标题文案
3-1 群标题文案位置左移,UI上需要调整。【完成1】
3-2 鼠标碰到当前区域,鼠标变成手指icon。【完成1】
4、原关闭该群提醒功能【完成0】
双端消息同步
屏蔽消息状态码不在 pc/mobile 分开,都是用 mobile 的状态码
所以第一次渲染 chatlist 时所拿取的信息的是 mobile 的
1 | export const getchatlist = obj => { |
手机端修改
一旦手机端修改是否屏蔽的状态会有下推
1 | else if (type == 'groupchat_remind_settings') { //群消息免打扰双端同步 |
根据其id判断在列表的位置并修改屏蔽状态
pc 端修改
一旦pc修改需要通知移动端修改
1 | export const setnotice = obj => { //更改用户私信群设置 |
所以全局搜 setnotice 修改参数就好了
查看群/个人资料
若点击“查看群资料”,默认切换至当前聊天室,然后打开当前群的群资料弹窗。
当前是否选折了查看的的用户
已选折正常逻辑
1
2this.$parent.$refs.cardcontaininfo.curView = "modal2")//群
this.showUserInfo(0, 3)//人未选折需要先选择同时注意时机问题
群没事,由于群是根据存储在 vux selectid 进行渲染而在选折时就已经修改了 selectid
个人用户就需要注意时机问题,不然可能导致查看的资料是之前选取那个人的 usercardinfo,由于会重新渲染 message.vue, 而showUserInfo() 的显示信息是根据 usercardinfo 获取的,但是 usercardinfo 的修改并不是一修改 slectedid 就会改变的,他的促发条件是聊天记录。这个时候我用的 eventbus
1
2
3this.$store.commit('fillusercardinfo', other);
Bus.$emit('newUserCard');
//一旦修改 usercardinfo 代表着可以去展示用户资料了