<script setup> import liveRoom from '@/pages/liveRoom/index.client.vue'; import {goodStore} from "@/stores/goods/index.js"; import ItemList from './components/ItemList/index.vue' import Cescribe from './components/Cescribe/index.vue' import {message} from '@/components/x-message/useMessage.js' import {liveStore} from "~/stores/live/index.js"; const {getAuctionDetail,auctionDetail} = goodStore(); const {fullLive}= liveStore() const changeLive = () => { fullLive.value = true; }; if (!auctionDetail.value.uuid){ await getAuctionDetail() } </script> <template> <div class="flex-grow-1"> <client-only> <liveRoom @click="changeLive" :class="['changeLive', fullLive ? 'expanded' : 'collapsed']"/> </client-only> <div v-if="!fullLive" class="bg-#fff"> <van-tabs sticky animated> <van-tab title="拍品列表"> <ItemList></ItemList> </van-tab> <van-tab title="拍卖说明"> <Cescribe></Cescribe> </van-tab> </van-tabs> <van-back-top right="15vw" bottom="10vh"/> </div> </div> </template> <style scoped lang="scss"> .ellipsis { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; text-overflow: ellipsis; } :deep(.van-swipe__indicator) { width: 8px; height: 8px; } .fade-enter-active, .fade-leave-active { transition: opacity 1s; } .fade-enter, .fade-leave-to { opacity: 0; } :deep(.van-swipe__indicator:not(.van-swipe__indicator--active)) { background: rgba(0, 0, 0, 0.8); } .changeLive { width: 100%; overflow: hidden; transition: height 0.4s ease, transform 0.4s ease; } .changeLive.collapsed { height: 188px; } .changeLive.expanded { position: absolute; z-index: 10; height: calc(100vh - var(--van-nav-bar-height)); } </style>