细节优化

This commit is contained in:
kron
2025-06-17 16:58:24 +08:00
parent 9c6964597e
commit 28e3d49e57
4 changed files with 35 additions and 7 deletions

View File

@@ -134,7 +134,7 @@ function calcRealY(num) {
.container {
width: calc(100% - 30px);
padding: 15px;
overflow: hidden;
/* overflow: hidden; */
}
.target {
position: relative;

View File

@@ -8,6 +8,8 @@ import ShootProgress from "@/components/ShootProgress.vue";
import ScoreResult from "@/components/ScoreResult.vue";
import ScorePanel from "@/components/ScorePanel.vue";
import Container from "@/components/Container.vue";
import Avatar from "@/components/Avatar.vue";
import BowPower from "@/components/BowPower.vue";
import { createPractiseAPI } from "@/apis";
import { MESSAGETYPES } from "@/constants";
import useStore from "@/store";
@@ -41,6 +43,7 @@ async function onReceiveMessage(content) {
messages.forEach((msg) => {
if (msg.constructor === MESSAGETYPES.ShootSyncMeArrowID) {
scores.value.push(msg.target);
power.value = msg.target.battery;
if (scores.value.length === total) {
showScore.value = true;
}
@@ -176,11 +179,17 @@ const onClose = () => {
:total="100"
:start="start"
/>
<view class="infos" v-if="step === 4">
<Avatar :src="user.avatar" :size="35" />
<BowPower :power="power" />
</view>
<BowTarget
:avatar="user.avatar"
:power="power"
:avatar="step === 2 ? user.avatar : ''"
:power="step === 2 ? power : 0"
:debug="step === 2"
v-if="step === 2 || step === 4"
:currentRound="step === 4 ? scores.length : 0"
:totalRound="step === 4 ? total : 0"
:tips="
step === 2 && scores.length > 0
? `本次射程${scores[scores.length - 1].dst / 100}米,${
@@ -221,4 +230,11 @@ const onClose = () => {
width: calc(100% - 20px);
margin: 10px 10px;
}
.infos {
display: flex;
align-items: center;
justify-content: space-between;
padding: 0 15px;
padding-top: 15px;
}
</style>

View File

@@ -20,7 +20,7 @@ const scores = ref([]);
const total = 12;
const currentRound = ref(0);
const practiseResult = ref({});
const power = ref(10);
const power = ref(0);
const onReady = async () => {
await createPractiseAPI(total);

View File

@@ -6,6 +6,8 @@ import BowTarget from "@/components/BowTarget.vue";
import ScorePanel from "@/components/ScorePanel.vue";
import ScoreResult from "@/components/ScoreResult.vue";
import SButton from "@/components/SButton.vue";
import Avatar from "@/components/Avatar.vue";
import BowPower from "@/components/BowPower.vue";
import { createPractiseAPI } from "@/apis";
import { MESSAGETYPES } from "@/constants";
import useStore from "@/store";
@@ -66,11 +68,13 @@ onUnmounted(() => {
:tips="`请连续射箭${total}支`"
:total="120"
/>
<view class="infos">
<Avatar :src="user.avatar" :size="35" />
<BowPower :power="power" />
</view>
<BowTarget
:totalRound="total"
:currentRound="scores.length + 1"
:avatar="user.avatar"
:power="power"
:scores="scores"
:tips="
!start && scores.length > 0
@@ -102,4 +106,12 @@ onUnmounted(() => {
</Container>
</template>
<style scoped></style>
<style scoped>
.infos {
display: flex;
align-items: center;
justify-content: space-between;
padding: 0 15px;
padding-top: 15px;
}
</style>