Kaynağa Gözat

bug fix: 素材选择组件:只有上传中素材,没有已上传完毕的素材时,也要显示素材列表而非无数据提示。

任一存 2 yıl önce
ebeveyn
işleme
8e7f71ae57

+ 20 - 8
packages/qjkankan-editor/src/components/materialSelectorForEditor.vue

@@ -42,7 +42,7 @@
         <span class="table-head" v-for="(item,i) in tableHeadersForImage" :key="i">{{item.name}}</span>
       </div>
       <div
-        v-if="imageListRealLength !== 0 || hasMoreImageData"
+        v-if="imageListLocalLength !== 0 || hasMoreImageData"
         class="table-body"
         v-infinite-scroll="requestMoreImageData"
         :infinite-scroll-disabled="!hasMoreImageData || isRequestingMoreImageData"
@@ -144,7 +144,7 @@
         <span class="table-head" v-for="(item,i) in tableHeadersForPano" :key="i">{{item.name}}</span>
       </div>
       <div
-        v-if="panoListRealLength !== 0 || hasMorePanoData"
+        v-if="panoListLocalLength !== 0 || hasMorePanoData"
         class="table-body"
         v-infinite-scroll="requestMorePanoData"
         :infinite-scroll-disabled="!hasMorePanoData || isRequestingMorePanoData"
@@ -225,7 +225,7 @@
         </div>
       </div>
       <!-- 无数据时的提示 -->
-      <div v-if="panoList.length === 0 && !hasMorePanoData" class="no-data">
+      <div v-else class="no-data">
         <div v-if="latestUsedSearchKey">
           <img :src="require('@/assets/images/default/empty_04_search.png')" alt="">
           <span>{{'未搜索到结果~'}}</span>
@@ -247,7 +247,7 @@
         <span class="table-head" v-for="(item,i) in tableHeadersForAudio" :key="i">{{item.name}}</span>
       </div>
       <div
-        v-if="audioListRealLength !== 0 || hasMoreAudioData"
+        v-if="audioListLocalLength !== 0 || hasMoreAudioData"
         class="table-body"
         v-infinite-scroll="requestMoreAudioData"
         :infinite-scroll-disabled="!hasMoreAudioData || isRequestingMoreAudioData"
@@ -359,7 +359,7 @@
         </div>
       </div>
       <!-- 无数据时的提示 -->
-      <div v-if="audioList.length === 0 && !hasMoreAudioData" class="no-data">
+      <div v-else class="no-data">
         <div v-if="latestUsedSearchKey">
           <img :src="require('@/assets/images/default/empty_04_search.png')" alt="">
           <span>{{'未搜索到结果~'}}</span>
@@ -381,7 +381,7 @@
         <span class="table-head" v-for="(item,i) in tableHeadersForVideo" :key="i">{{item.name}}</span>
       </div>
       <div
-        v-if="videoListRealLength !== 0 || hasMoreVideoData"
+        v-if="videoListLocalLength !== 0 || hasMoreVideoData"
         class="table-body"
         v-infinite-scroll="requestMoreVideoData"
         :infinite-scroll-disabled="!hasMoreVideoData || isRequestingMoreVideoData"
@@ -473,7 +473,7 @@
       </div>
 
       <!-- 无数据时的提示 -->
-      <div v-if="videoList.length === 0 && !hasMoreVideoData" class="no-data">
+      <div v-else class="no-data">
         <div v-if="latestUsedSearchKey">
           <img :src="require('@/assets/images/default/empty_04_search.png')" alt="">
           <span>{{'未搜索到结果~'}}</span>
@@ -519,7 +519,7 @@
         </div>
       </div>
       <!-- 无数据时的提示 -->
-      <div v-if="scene3DList.length === 0 && !hasMore3DData" class="no-data">
+      <div v-else class="no-data">
         <div v-if="latestUsedSearchKey">
           <img :src="require('@/assets/images/default/empty_04_search.png')" alt="">
           <span>{{'未搜索到结果~'}}</span>
@@ -793,21 +793,33 @@ export default {
         return item.status === 'SUCCESS'
       }).length
     },
+    imageListLocalLength() {
+      return this.imageList.length + this.uploadStatusListImage.length
+    },
     panoListRealLength() {
       return this.panoList.length + this.uploadStatusListPano.filter((item) => {
         return item.status === 'SUCCESS'
       }).length
     },
+    panoListLocalLength() {
+      return this.panoList.length + this.uploadStatusListPano.length
+    },
     audioListRealLength() {
       return this.audioList.length + this.uploadStatusListAudio.filter((item) => {
         return item.status === 'SUCCESS'
       }).length
     },
+    audioListLocalLength() {
+      return this.audioList.length + this.uploadStatusListAudio.length
+    },
     videoListRealLength() {
       return this.videoList.length + this.uploadStatusListVideo.filter((item) => {
         return item.status === 'SUCCESS'
       }).length
     },
+    videoListLocalLength() {
+      return this.videoList.length + this.uploadStatusListVideo.length
+    },
     needLongPolling() {
       return this.uploadStatusListPano.some((item) => {
         return item.status === 'LOADING' && item.ifKnowProgress === false

+ 15 - 3
packages/qjkankan-editor/src/components/materialSelectorForManageCenter.vue

@@ -63,7 +63,7 @@
         <span class="table-head" v-for="(item,i) in tableHeadersForPano" :key="i">{{item.name}}</span>
       </div>
       <div
-        v-if="panoListRealLength !== 0 || hasMorePanoData"
+        v-if="panoListLocalLength !== 0 || hasMorePanoData"
         class="table-body"
         v-infinite-scroll="requestMorePanoData"
         :infinite-scroll-disabled="!hasMorePanoData || isRequestingMorePanoData"
@@ -146,7 +146,7 @@
         </div>
       </div>
       <!-- 无数据时的提示 -->
-      <div v-if="panoList.length === 0 && !hasMorePanoData" class="no-data">
+      <div v-else class="no-data">
         <div v-if="latestUsedSearchKey">
           <img :src="require('@/assets/images/default/empty_04_search.png')" alt="">
           <span>{{'未搜索到结果~'}}</span>
@@ -189,7 +189,7 @@
         </div>
       </div>
       <!-- 无数据时的提示 -->
-      <div v-if="scene3DList.length === 0 && !hasMore3DData" class="no-data">
+      <div v-else class="no-data">
         <div v-if="latestUsedSearchKey">
           <img :src="require('@/assets/images/default/empty_04_search.png')" alt="">
           <span>{{'未搜索到结果~'}}</span>
@@ -467,21 +467,33 @@ export default {
         return item.status === 'SUCCESS'
       }).length
     },
+    imageListLocalLength() {
+      return this.imageList.length + this.uploadStatusListImage.length
+    },
     panoListRealLength() {
       return this.panoList.length + this.uploadStatusListPano.filter((item) => {
         return item.status === 'SUCCESS'
       }).length
     },
+    panoListLocalLength() {
+      return this.panoList.length + this.uploadStatusListPano.length
+    },
     audioListRealLength() {
       return this.audioList.length + this.uploadStatusListAudio.filter((item) => {
         return item.status === 'SUCCESS'
       }).length
     },
+    audioListLocalLength() {
+      return this.audioList.length + this.uploadStatusListAudio.length
+    },
     videoListRealLength() {
       return this.videoList.length + this.uploadStatusListVideo.filter((item) => {
         return item.status === 'SUCCESS'
       }).length
     },
+    videoListLocalLength() {
+      return this.videoList.length + this.uploadStatusListVideo.length
+    },
     needLongPolling() {
       return this.uploadStatusListPano.some((item) => {
         return item.status === 'LOADING' && item.ifKnowProgress === false