| | |
| | | <img src="@/assets/img/b1.png" style="width: 100%;height: 170px;border-radius: 14px;" /> |
| | | </div> --> |
| | | <div style="margin: 0 10px;margin-top: 30px;margin-bottom: 30px;"> |
| | | <img src="@/assets/img/banner-home.png" style="width: 100%;height: 170px;border-radius: 14px;" /> |
| | | <van-swipe class="banner-swipe" :autoplay="3000" indicator-color="white" v-if="bannerList && bannerList.length > 0"> |
| | | <van-swipe-item v-for="(item, index) in bannerList" :key="index"> |
| | | <img :src="item.bannerUrl" style="width: 100%;height: 4.5rem;border-radius: 14px;object-fit: cover;" @click="handleBannerClick(item)" /> |
| | | </van-swipe-item> |
| | | </van-swipe> |
| | | <img v-else src="@/assets/img/banner-home.png" style="width: 100%;height: 170px;border-radius: 14px;" /> |
| | | </div> |
| | | </div> |
| | | <div style="width: 100%; height: 40px;"></div> |
| | |
| | | show: false, |
| | | secret: "", |
| | | unreadCount: 0, |
| | | messageTimer: null |
| | | messageTimer: null, |
| | | bannerList: [] |
| | | }; |
| | | }, |
| | | computed: { |
| | |
| | | mounted() { |
| | | this.getNewsList(1); |
| | | this.stockgetZdfNumber(); |
| | | this.getSiteBannerList(); |
| | | this.kLineChart = init("Zline"); |
| | | this.kLineChart.setStyleOptions({ |
| | | candle: { |
| | |
| | | elAlertText: data.msg |
| | | }); |
| | | } |
| | | }, |
| | | async getSiteBannerList() { |
| | | try { |
| | | let data = await api.getSiteBanner(); |
| | | if (data.status === 0 && data.data) { |
| | | let list = Array.isArray(data.data) ? data.data : []; |
| | | // 按照 isOrder 从小到大排序 |
| | | this.bannerList = list.sort((a, b) => { |
| | | const orderA = a.isOrder || 0; |
| | | const orderB = b.isOrder || 0; |
| | | return orderA - orderB; |
| | | }); |
| | | } |
| | | } catch (error) { |
| | | console.error('获取轮播图失败:', error); |
| | | this.bannerList = []; |
| | | } |
| | | }, |
| | | handleBannerClick(item) { |
| | | if (item.targetUrl || item.linkUrl) { |
| | | window.open(item.targetUrl || item.linkUrl, '_blank'); |
| | | } |
| | | } |
| | | } |
| | | }; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .banner-swipe { |
| | | width: 100%; |
| | | height: 4.5rem; |
| | | border-radius: 14px; |
| | | overflow: hidden; |
| | | |
| | | .van-swipe-item { |
| | | width: 100%; |
| | | height: 100%; |
| | | |
| | | img { |
| | | width: 100%; |
| | | height: 100%; |
| | | object-fit: cover; |
| | | cursor: pointer; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | .dang { |