update:vip完成
This commit is contained in:
@@ -55,6 +55,17 @@ const rankLoading = ref(false);
|
||||
const scoreRankList = ref([]);
|
||||
const mvpRankList = ref([]);
|
||||
const tenRingRankList = ref([]);
|
||||
const isSVip = computed(() => user.value.sVip === true);
|
||||
const isVip = computed(() => user.value.vip === true && !isSVip.value);
|
||||
|
||||
const isMember = (item = {}) => item.vip === true || item.sVip === true;
|
||||
|
||||
const getMemberNicknameClass = (item = {}) => [
|
||||
"rank-preview-name",
|
||||
"member-nickname",
|
||||
item.vip === true && item.sVip !== true ? "member-nickname--vip" : "",
|
||||
item.sVip === true ? "member-nickname--svip" : "",
|
||||
];
|
||||
|
||||
// 根据接口返回结构提取榜单数组,兼容数组和对象两种返回形式。
|
||||
const getRankListFromResponse = (result) => {
|
||||
@@ -314,7 +325,20 @@ onShow(async () => {
|
||||
:rankLvl="seasonStats.rankLvl"
|
||||
:size="30"
|
||||
/>
|
||||
<text>{{ seasonStats.nickName || user.nickName }}</text>
|
||||
<view
|
||||
:class="[
|
||||
'member-nickname',
|
||||
isVip ? 'member-nickname--vip' : '',
|
||||
isSVip ? 'member-nickname--svip' : '',
|
||||
]"
|
||||
>
|
||||
<text class="member-nickname__text">
|
||||
{{ seasonStats.nickName || user.nickName }}
|
||||
</text>
|
||||
<text v-if="isSVip" class="member-nickname__shine">
|
||||
{{ seasonStats.nickName || user.nickName }}
|
||||
</text>
|
||||
</view>
|
||||
</view>
|
||||
<view
|
||||
class="ranking-season"
|
||||
@@ -476,7 +500,13 @@ onShow(async () => {
|
||||
:style="{ borderColor: index < 3 ? topThreeColors[index] : '' }"
|
||||
/>
|
||||
<view>
|
||||
<text class="truncate">{{ item.name }}</text>
|
||||
<view v-if="isMember(item)" :class="getMemberNicknameClass(item)">
|
||||
<text class="member-nickname__text">{{ item.name }}</text>
|
||||
<text v-if="item.sVip === true" class="member-nickname__shine">
|
||||
{{ item.name }}
|
||||
</text>
|
||||
</view>
|
||||
<text v-else class="rank-preview-name truncate">{{ item.name }}</text>
|
||||
<text>{{ formatRankSubTitle(item) }}</text>
|
||||
</view>
|
||||
<text>{{ item.totalScore || 0 }}<text>分</text></text>
|
||||
@@ -499,7 +529,13 @@ onShow(async () => {
|
||||
:style="{ borderColor: index < 3 ? topThreeColors[index] : '' }"
|
||||
/>
|
||||
<view>
|
||||
<text class="truncate">{{ item.name }}</text>
|
||||
<view v-if="isMember(item)" :class="getMemberNicknameClass(item)">
|
||||
<text class="member-nickname__text">{{ item.name }}</text>
|
||||
<text v-if="item.sVip === true" class="member-nickname__shine">
|
||||
{{ item.name }}
|
||||
</text>
|
||||
</view>
|
||||
<text v-else class="rank-preview-name truncate">{{ item.name }}</text>
|
||||
<text>{{ formatRankSubTitle(item) }}</text>
|
||||
</view>
|
||||
<text>{{ item.mvpCount || 0 }}<text>次</text></text>
|
||||
@@ -522,7 +558,13 @@ onShow(async () => {
|
||||
:style="{ borderColor: index < 3 ? topThreeColors[index] : '' }"
|
||||
/>
|
||||
<view>
|
||||
<text class="truncate">{{ item.name }}</text>
|
||||
<view v-if="isMember(item)" :class="getMemberNicknameClass(item)">
|
||||
<text class="member-nickname__text">{{ item.name }}</text>
|
||||
<text v-if="item.sVip === true" class="member-nickname__shine">
|
||||
{{ item.name }}
|
||||
</text>
|
||||
</view>
|
||||
<text v-else class="rank-preview-name truncate">{{ item.name }}</text>
|
||||
<text>{{ formatRankSubTitle(item) }}</text>
|
||||
</view>
|
||||
<text>{{ item.tenRings ?? item.TenRings ?? 0 }}<text>次</text></text>
|
||||
@@ -579,8 +621,14 @@ onShow(async () => {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.user-info > text {
|
||||
.user-info > .member-nickname {
|
||||
margin-left: 15px;
|
||||
max-width: 220rpx;
|
||||
}
|
||||
|
||||
.user-info .member-nickname__text,
|
||||
.user-info .member-nickname__shine {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.ranking-season {
|
||||
@@ -773,6 +821,17 @@ onShow(async () => {
|
||||
width: 120px;
|
||||
}
|
||||
|
||||
.rank-preview-name {
|
||||
color: #fff9;
|
||||
font-size: 14px;
|
||||
width: 120px;
|
||||
}
|
||||
|
||||
.rank-preview-name .member-nickname__text,
|
||||
.rank-preview-name .member-nickname__shine {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.rank-item > view:nth-child(3) > text:last-child {
|
||||
color: #fff4;
|
||||
font-size: 13px;
|
||||
|
||||
Reference in New Issue
Block a user