等级显示优化
This commit is contained in:
@@ -32,7 +32,7 @@ const props = defineProps({
|
||||
<Avatar :src="user.avatar" frame :size="50" />
|
||||
<view>
|
||||
<text>{{ user.nickName }}</text>
|
||||
<text>砖石1级</text>
|
||||
<text>{{ user.lvlName }}</text>
|
||||
</view>
|
||||
</view>
|
||||
<view @click="onClose">
|
||||
|
||||
@@ -70,7 +70,7 @@ const saveImage = () => {
|
||||
<Avatar :src="user.avatar" :size="40" frame />
|
||||
<view>
|
||||
<text>{{ user.nickName }}</text>
|
||||
<text>砖石1级</text>
|
||||
<text>{{ user.lvlName }}</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -11,7 +11,6 @@ const props = defineProps({
|
||||
default: false,
|
||||
},
|
||||
});
|
||||
const lvlName = ref("");
|
||||
const nextLvlPoints = ref("");
|
||||
const containerWidth = computed(() => (props.showRank ? "72vw" : "100vw"));
|
||||
const toUserPage = () => {
|
||||
@@ -29,12 +28,8 @@ const toUserPage = () => {
|
||||
onMounted(() => {
|
||||
const rankInfos = config.value.randInfos || [];
|
||||
rankInfos.some((r, index) => {
|
||||
lvlName.value = rankInfos[index].name;
|
||||
if (r.upgrade_scores > user.value.scores) {
|
||||
nextLvlPoints.value = r.upgrade_scores;
|
||||
if (rankInfos[index - 1]) {
|
||||
lvlName.value = rankInfos[index - 1].name;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
@@ -55,7 +50,7 @@ onMounted(() => {
|
||||
/>
|
||||
</view>
|
||||
<view class="user-stats">
|
||||
<text class="level-tag level-tag-first">{{ lvlName }}</text>
|
||||
<text class="level-tag level-tag-first">{{ user.lvlName }}</text>
|
||||
<text class="level-tag level-tag-second">L{{ user.lvl }}</text>
|
||||
<view class="rank-tag">
|
||||
<view class="rank-tag-progress" :style="{ width: '40%' }" />
|
||||
|
||||
@@ -21,6 +21,7 @@ const showBowData = ref(false);
|
||||
const arrows = ref([]);
|
||||
|
||||
const handleSelect = async (index) => {
|
||||
selectedIndex.value = index;
|
||||
if (index === 0 && matchList.value.length === 0) {
|
||||
const result = await getBattleListAPI(matchPage.value, 2);
|
||||
matchList.value = result;
|
||||
@@ -35,7 +36,6 @@ const handleSelect = async (index) => {
|
||||
const result = await getPractiseResultListAPI();
|
||||
practiseList.value = result.list;
|
||||
}
|
||||
selectedIndex.value = index;
|
||||
};
|
||||
|
||||
const toMatchDetail = (id) => {
|
||||
|
||||
32
src/store.js
32
src/store.js
@@ -29,7 +29,22 @@ export default defineStore("store", {
|
||||
// 方法
|
||||
actions: {
|
||||
updateUser(user) {
|
||||
this.user = user || defaultUser;
|
||||
this.user = { ...defaultUser, ...user };
|
||||
const rankInfos = this.config.randInfos || [];
|
||||
let lvlName = "";
|
||||
if (this.user.scores) {
|
||||
rankInfos.some((r, index) => {
|
||||
lvlName = rankInfos[index].name;
|
||||
if (r.upgrade_scores > this.user.scores) {
|
||||
if (rankInfos[index - 1]) {
|
||||
lvlName = rankInfos[index - 1].name;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
});
|
||||
}
|
||||
this.user.lvlName = lvlName;
|
||||
},
|
||||
updateDevice(deviceId, deviceName) {
|
||||
this.device.deviceId = deviceId;
|
||||
@@ -37,6 +52,21 @@ export default defineStore("store", {
|
||||
},
|
||||
updateConfig(config) {
|
||||
this.config = config;
|
||||
const rankInfos = config.randInfos || [];
|
||||
let lvlName = "";
|
||||
if (this.user.scores) {
|
||||
rankInfos.some((r, index) => {
|
||||
lvlName = rankInfos[index].name;
|
||||
if (r.upgrade_scores > this.user.scores) {
|
||||
if (rankInfos[index - 1]) {
|
||||
lvlName = rankInfos[index - 1].name;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
});
|
||||
}
|
||||
this.user.lvlName = lvlName;
|
||||
},
|
||||
},
|
||||
|
||||
|
||||
Reference in New Issue
Block a user