计分本细节调整
This commit is contained in:
@@ -6,17 +6,9 @@ const props = defineProps({
|
||||
type: Object,
|
||||
default: () => {},
|
||||
},
|
||||
onRemove: {
|
||||
type: Function,
|
||||
default: null,
|
||||
},
|
||||
});
|
||||
const bowOptions = ref({});
|
||||
const targetOptions = ref({});
|
||||
// 使用插槽自定义右侧按钮为图标,若需要文字按钮可恢复 rightOptions
|
||||
|
||||
// 根据是否传入 onRemove 来决定是否允许左滑
|
||||
const canSwipe = computed(() => typeof props.onRemove === "function");
|
||||
|
||||
const toDetailPage = () => {
|
||||
const config = uni.getStorageSync("point-book-config");
|
||||
@@ -46,60 +38,41 @@ onMounted(() => {
|
||||
targetOptions.value[item.id] = item;
|
||||
});
|
||||
});
|
||||
|
||||
const onSwipeActionClick = () => {
|
||||
if (typeof props.onRemove === "function") props.onRemove(props.data);
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<uni-swipe-action>
|
||||
<uni-swipe-action-item :disabled="!canSwipe" @change="() => {}">
|
||||
<template v-slot:right v-if="canSwipe">
|
||||
<view class="swipe-right" @click="onSwipeActionClick">
|
||||
<image
|
||||
class="swipe-icon"
|
||||
src="../static/delete-white.png"
|
||||
mode="widthFix"
|
||||
/>
|
||||
</view>
|
||||
</template>
|
||||
<view class="container" @click="toDetailPage">
|
||||
<view class="left-part">
|
||||
<view class="labels">
|
||||
<view></view>
|
||||
<text>{{
|
||||
bowOptions[data.bowType] ? bowOptions[data.bowType].name : ""
|
||||
}}</text>
|
||||
<text>{{ data.distance }} 米</text>
|
||||
<text>{{
|
||||
targetOptions[data.targetType]
|
||||
? targetOptions[data.targetType].name
|
||||
: ""
|
||||
}}</text>
|
||||
</view>
|
||||
<view>
|
||||
<text>{{ data.createAt }}</text>
|
||||
</view>
|
||||
<view>
|
||||
<text
|
||||
>黄心率:{{ Number((data.yellowRate * 100).toFixed(2)) }}%</text
|
||||
>
|
||||
<text>10环数:{{ data.tenRings }}</text>
|
||||
<text>平均:{{ data.averageRing }}</text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="right-part">
|
||||
<image src="../static/bow-target.png" mode="widthFix" />
|
||||
<view class="arrow-amount">
|
||||
<text>{{ data.actualTotalRing }}</text>
|
||||
<text>/</text>
|
||||
<text>{{ data.totalRing }}</text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="container" @click="toDetailPage">
|
||||
<view class="left-part">
|
||||
<view class="labels">
|
||||
<view></view>
|
||||
<text>{{
|
||||
bowOptions[data.bowType] ? bowOptions[data.bowType].name : ""
|
||||
}}</text>
|
||||
<text>{{ data.distance }} 米</text>
|
||||
<text>{{
|
||||
targetOptions[data.targetType]
|
||||
? targetOptions[data.targetType].name
|
||||
: ""
|
||||
}}</text>
|
||||
</view>
|
||||
</uni-swipe-action-item>
|
||||
</uni-swipe-action>
|
||||
<view>
|
||||
<text>{{ data.createAt }}</text>
|
||||
</view>
|
||||
<view>
|
||||
<text>黄心率:{{ Number((data.yellowRate * 100).toFixed(2)) }}%</text>
|
||||
<text>10环数:{{ data.tenRings }}</text>
|
||||
<text>平均:{{ data.averageRing }}</text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="right-part">
|
||||
<image src="../static/bow-target.png" mode="widthFix" />
|
||||
<view class="arrow-amount">
|
||||
<text>{{ data.actualTotalRing }}</text>
|
||||
<text>/</text>
|
||||
<text>{{ data.totalRing }}</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<style scoped>
|
||||
@@ -176,18 +149,4 @@ const onSwipeActionClick = () => {
|
||||
font-size: 30rpx;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
/* 右侧滑动按钮(自定义宽度与图标) */
|
||||
.swipe-right {
|
||||
width: 120rpx; /* 这里可按需调整按钮宽度 */
|
||||
height: 100%;
|
||||
background-color: #ff7c7c;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
.swipe-icon {
|
||||
width: 44rpx;
|
||||
height: 44rpx;
|
||||
}
|
||||
</style>
|
||||
|
||||
Reference in New Issue
Block a user