lex 2 vuotta sitten
vanhempi
commit
e9d58afba7

+ 3 - 1
src/student/leaderboard/index.tsx

@@ -73,7 +73,9 @@ export default defineComponent({
             params: {
               activityPlanId: route.query.id,
               activityEvaluationId:
-                state.musicList[state.tabIndex].evaluationId,
+                state.rankingMethod === 'TOTAL_SCORE'
+                  ? state.musicList[state.tabIndex].subjectId
+                  : state.musicList[state.tabIndex].evaluationId,
               limit: 10
             }
           }

+ 1 - 1
src/student/share-active/track-review-activity/index.tsx

@@ -483,7 +483,7 @@ export default defineComponent({
                     icon: () => (
                       <Image
                         src={getAssetsHomeFile(
-                          this.rankingMethod === 'TOTAL_SCORE'
+                          this.rankingMethod !== 'TOTAL_SCORE'
                             ? 'icon_music.png'
                             : 'icon_subject.png'
                         )}

+ 34 - 2
src/student/share-active/track-review-activity/track-song.tsx

@@ -31,7 +31,8 @@ export default defineComponent({
       title: subjectName + '曲目评测',
       behaviorId: getRandomKey(),
       musicList: [] as any,
-      rankingScore: 0
+      rankingScore: 0,
+      hiddenProperty: null as any
     }
   },
   async mounted() {
@@ -48,8 +49,39 @@ export default defineComponent({
       }
     })
     await this.getMusicInfo()
+
+    this.hiddenProperty =
+      'hidden' in document
+        ? 'hidden'
+        : 'webkitHidden' in document
+        ? 'webkitHidden'
+        : 'mozHidden' in document
+        ? 'mozHidden'
+        : null
+    const visibilityChangeEvent = this.hiddenProperty.replace(
+      /hidden/i,
+      'visibilitychange'
+    )
+    document.addEventListener(visibilityChangeEvent, this.onVisibilityChange)
+  },
+  unmounted() {
+    if (this.hiddenProperty) {
+      const visibilityChangeEvent = this.hiddenProperty.replace(
+        /hidden/i,
+        'visibilitychange'
+      )
+      document.removeEventListener(
+        visibilityChangeEvent,
+        this.onVisibilityChange
+      )
+    }
   },
   methods: {
+    onVisibilityChange() {
+      if (!document[this.hiddenProperty]) {
+        this.getMusicInfo()
+      }
+    },
     async getMusicInfo() {
       try {
         const { data } = await request.post(
@@ -161,7 +193,7 @@ export default defineComponent({
                   <div class={styles.musicName}>{item.musicSheetName}</div>
                 ),
                 label: () =>
-                  item.userId ? (
+                  item.score ? (
                     <div class={[styles.labelClass, styles.labelScore]}>
                       我的评分:{item.score}
                     </div>

+ 1 - 1
src/teacher/share-page/track-review-activity/index.tsx

@@ -286,7 +286,7 @@ export default defineComponent({
                     icon: () => (
                       <Image
                         src={getAssetsHomeFile(
-                          this.rankingMethod === 'TOTAL_SCORE'
+                          this.rankingMethod !== 'TOTAL_SCORE'
                             ? 'icon_music.png'
                             : 'icon_subject.png'
                         )}