新朋友无数据处理,我的群组没数据处理

This commit is contained in:
Z
2022-02-22 17:20:26 +08:00
parent 5a52bdf2dd
commit e21d0e928d
2 changed files with 71 additions and 28 deletions

View File

@@ -6,9 +6,16 @@
:disabled="true" :show-action="false" />
</view>
</u-sticky>
<block v-if="pendings.length > 0">
<view v-for="(item, index) in pendings" :key="index">
<apply-cell :message="item.latestMessage" @success="getPendingList" />
</view>
</block>
<view class="no-lists" v-else>
<u-image class="cover" radius="4" width="400rpx" height="400rpx"
:src="require('@/static/imgs/no-friend.png')" :lazy-load="true" />
<span> 暂无好友申请 ~</span>
</view>
</view>
</template>
@@ -22,7 +29,8 @@
},
data() {
return {
pendings: []
pendings: [],
bg: '#fff'
}
},
onLoad() {
@@ -32,6 +40,11 @@
methods: {
getPendingList() {
im.getPendingList((pendings) => {
if (pendings.length > 0) {
this.bg = '#f9f9f9'
} else {
this.bg = '#fff'
}
this.pendings = pendings
})
}
@@ -46,7 +59,7 @@
}
.no-lists {
padding-top: $padding * 3;
padding-top: $padding * 5;
display: flex;
flex-direction: column;
align-items: center;

View File

@@ -1,5 +1,6 @@
<template>
<view class="group">
<view class="group" :style="`background-color:${bg};`">
<block v-if="groups.length > 0">
<view class="title"> 群聊 </view>
<view v-for="(item, index) in groups" :key="index" class="friend-flex" @click="toGroup(item.targetId)">
<u-avatar size="38" shape="square" :src="contact(item.targetId).portraitUrl" />
@@ -8,6 +9,12 @@
</view>
</view>
<view class="group-count"> {{groups.length}}个群聊 </view>
</block>
<view class="no-lists" v-else>
<u-image class="cover" radius="4" width="400rpx" height="400rpx"
:src="require('@/static/imgs/no-friend.png')" :lazy-load="true" />
<span>空空如也~</span>
</view>
<u-modal negativeTop="300" :show="createModal" title="创建群聊" showCancelButton @cancel="onHideModal"
@confirm="onCreateGroup">
<view class="slot-content">
@@ -28,7 +35,8 @@
return {
groups: [],
createModal: false,
groupName: ''
groupName: '',
bg: '#fff'
}
},
computed: {
@@ -48,6 +56,11 @@
methods: {
initData() {
getMyGroups().then((res) => {
if (res.length > 0) {
this.bg = '#f9f9f9'
} else {
this.bg = '#fff'
}
this.groups = res
res.map(item => {
this.$store.dispatch('updateContact', item)
@@ -88,11 +101,13 @@
.group {
min-height: 100vh;
background-color: $window-color;
.title {
font-size: $title-size-m;
color: $text-gray-m;
padding: 10rpx $padding;
}
.group-count {
text-align: center;
font-size: $title-size;
@@ -130,4 +145,19 @@
}
}
}
.no-lists {
padding-top: $padding * 5;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
box-sizing: border-box;
font-size: $title-size-m;
color: $text-gray-m;
span {
padding-top: $padding;
}
}
</style>