From fa17f93cc94db72470d73c2d29d0a70baeb6b199 Mon Sep 17 00:00:00 2001 From: 康凯 <kangk26@foxmail.com> Date: Thu, 27 Jan 2022 11:32:58 +0800 Subject: [PATCH] 修复:相关视频列表页面封面图片加载失败时显示默认图片 --- src/views/spirit/detail.vue | 24 ++++++------ src/views/personage/detail.vue | 24 ++++++------ src/views/scenery/detail.vue | 30 +++++++------- src/views/memory/detail.vue | 24 ++++++------ 4 files changed, 51 insertions(+), 51 deletions(-) diff --git a/src/views/memory/detail.vue b/src/views/memory/detail.vue index 3c0ae83..f87ce00 100644 --- a/src/views/memory/detail.vue +++ b/src/views/memory/detail.vue @@ -53,19 +53,19 @@ v-infinite-scroll="NextVideos" :infinite-scroll-disabled="videos.scrollDisabled" :infinite-scroll-distance="10"> - <div class="content-item" - v-for="item in videos.data" - :key="item.id" - @click="ToVideoDetail(item.id)"> - <div class="item-left"> - <img :src="item.cover"/> + <template v-for="item in videos.data"> + <div class="content-item" :key="item.key" @click="ToVideoDetail(item.id)"> + <div class="item-left"> + <img :src="item.cover" v-if="item.cover"/> + <img src="@/assets/defaultCover.png" v-else/> + </div> + <div class="item-right"> + <div class="item-name">{{ item.name }}</div> + <div class="item-introduce">{{ item.description }}</div> + </div> </div> - <div class="item-right"> - <div class="item-name">{{ item.name }}</div> - <div class="item-introduce">{{ item.description }}</div> - </div> - </div> - <div class="line"></div> + <div class="line" :key="item.key"></div> + </template> </div> </mt-tab-container-item> </mt-tab-container> diff --git a/src/views/personage/detail.vue b/src/views/personage/detail.vue index 3c0ae83..f87ce00 100644 --- a/src/views/personage/detail.vue +++ b/src/views/personage/detail.vue @@ -53,19 +53,19 @@ v-infinite-scroll="NextVideos" :infinite-scroll-disabled="videos.scrollDisabled" :infinite-scroll-distance="10"> - <div class="content-item" - v-for="item in videos.data" - :key="item.id" - @click="ToVideoDetail(item.id)"> - <div class="item-left"> - <img :src="item.cover"/> + <template v-for="item in videos.data"> + <div class="content-item" :key="item.key" @click="ToVideoDetail(item.id)"> + <div class="item-left"> + <img :src="item.cover" v-if="item.cover"/> + <img src="@/assets/defaultCover.png" v-else/> + </div> + <div class="item-right"> + <div class="item-name">{{ item.name }}</div> + <div class="item-introduce">{{ item.description }}</div> + </div> </div> - <div class="item-right"> - <div class="item-name">{{ item.name }}</div> - <div class="item-introduce">{{ item.description }}</div> - </div> - </div> - <div class="line"></div> + <div class="line" :key="item.key"></div> + </template> </div> </mt-tab-container-item> </mt-tab-container> diff --git a/src/views/scenery/detail.vue b/src/views/scenery/detail.vue index 3c0ae83..eab8256 100644 --- a/src/views/scenery/detail.vue +++ b/src/views/scenery/detail.vue @@ -53,19 +53,19 @@ v-infinite-scroll="NextVideos" :infinite-scroll-disabled="videos.scrollDisabled" :infinite-scroll-distance="10"> - <div class="content-item" - v-for="item in videos.data" - :key="item.id" - @click="ToVideoDetail(item.id)"> - <div class="item-left"> - <img :src="item.cover"/> + <template v-for="item in videos.data"> + <div class="content-item" :key="item.key" @click="ToVideoDetail(item.id)"> + <div class="item-left"> + <img :src="item.cover" v-if="item.cover"/> + <img src="@/assets/defaultCover.png" v-else/> + </div> + <div class="item-right"> + <div class="item-name">{{ item.name }}</div> + <div class="item-introduce">{{ item.description }}</div> + </div> </div> - <div class="item-right"> - <div class="item-name">{{ item.name }}</div> - <div class="item-introduce">{{ item.description }}</div> - </div> - </div> - <div class="line"></div> + <div class="line" :key="item.key"></div> + </template> </div> </mt-tab-container-item> </mt-tab-container> @@ -349,7 +349,7 @@ width: 100%; } -.mint-navbar /deep/ .mint-tab-item{ +.mint-navbar /deep/ .mint-tab-item { display: flex; flex-direction: column; justify-content: center; @@ -449,7 +449,7 @@ flex-direction: row; justify-content: flex-start; align-items: flex-start; - align-content:flex-start; + align-content: flex-start; height: 65vh; overflow: scroll; @@ -516,7 +516,7 @@ border-radius: 0 0 30px 30px; } -.content-videos .line{ +.content-videos .line { width: 90%; } diff --git a/src/views/spirit/detail.vue b/src/views/spirit/detail.vue index d0cefbf..bfe37e2 100644 --- a/src/views/spirit/detail.vue +++ b/src/views/spirit/detail.vue @@ -53,19 +53,19 @@ v-infinite-scroll="NextVideos" :infinite-scroll-disabled="videos.scrollDisabled" :infinite-scroll-distance="10"> - <div class="content-item" - v-for="item in videos.data" - :key="item.id" - @click="ToVideoDetail(item.id)"> - <div class="item-left"> - <img :src="item.cover"/> + <template v-for="item in videos.data"> + <div class="content-item" :key="item.key" @click="ToVideoDetail(item.id)"> + <div class="item-left"> + <img :src="item.cover" v-if="item.cover"/> + <img src="@/assets/defaultCover.png" v-else/> + </div> + <div class="item-right"> + <div class="item-name">{{ item.name }}</div> + <div class="item-introduce">{{ item.description }}</div> + </div> </div> - <div class="item-right"> - <div class="item-name">{{ item.name }}</div> - <div class="item-introduce">{{ item.description }}</div> - </div> - </div> - <div class="line"></div> + <div class="line" :key="item.key"></div> + </template> </div> </mt-tab-container-item> </mt-tab-container> -- Gitblit v1.9.3