fix: finalize merged venue navigation
This commit is contained in:
@@ -5,6 +5,12 @@
|
||||
<text class="subtitle">进入对应场馆后,会员、预约、订单和支付数据彼此独立。</text>
|
||||
</view>
|
||||
|
||||
<view v-if="selectedVenue" class="current-card">
|
||||
<text class="current-label">当前场馆</text>
|
||||
<text class="current-name">{{ selectedVenue.name }}</text>
|
||||
<button class="primary-button continue-btn" @tap="continueCurrentVenue">继续进入</button>
|
||||
</view>
|
||||
|
||||
<view class="venue-list">
|
||||
<view
|
||||
v-for="venue in venues"
|
||||
@@ -18,7 +24,7 @@
|
||||
<text class="venue-desc">{{ venue.description }}</text>
|
||||
</view>
|
||||
<view class="venue-action">
|
||||
<text>{{ venue.key === currentVenue ? '当前' : '进入' }}</text>
|
||||
<text>{{ venue.key === currentVenue ? '切换进入' : '进入' }}</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
@@ -33,6 +39,7 @@ import { VENUE_OPTIONS } from '@/utils/venue'
|
||||
const venueStore = useVenueStore()
|
||||
const venues = VENUE_OPTIONS
|
||||
const currentVenue = computed(() => venueStore.currentVenue)
|
||||
const selectedVenue = computed(() => venueStore.currentVenueOption)
|
||||
|
||||
onMounted(() => {
|
||||
venueStore.init()
|
||||
@@ -41,6 +48,11 @@ onMounted(() => {
|
||||
const selectVenue = (venueKey) => {
|
||||
venueStore.enterVenue(venueKey)
|
||||
}
|
||||
|
||||
const continueCurrentVenue = () => {
|
||||
if (!venueStore.currentVenue) return
|
||||
venueStore.enterVenue(venueStore.currentVenue)
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
@@ -75,6 +87,33 @@ const selectVenue = (venueKey) => {
|
||||
gap: 24rpx;
|
||||
}
|
||||
|
||||
.current-card {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 12rpx;
|
||||
margin-bottom: 32rpx;
|
||||
padding: 28rpx;
|
||||
border-radius: $border-radius-lg;
|
||||
background: $bg-color-main;
|
||||
border: 1rpx solid $border-color;
|
||||
}
|
||||
|
||||
.current-label {
|
||||
color: $text-color-muted;
|
||||
font-size: 22rpx;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
.current-name {
|
||||
color: $text-color-main;
|
||||
font-size: 32rpx;
|
||||
font-weight: 900;
|
||||
}
|
||||
|
||||
.continue-btn {
|
||||
margin-top: 12rpx;
|
||||
}
|
||||
|
||||
.venue-card {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
Reference in New Issue
Block a user