Kaynağa Gözat

去掉动画

liushengqiang 2 yıl önce
ebeveyn
işleme
f76c583a41

+ 0 - 1
src/views/coursewarePlay/component/musicScore.tsx

@@ -105,7 +105,6 @@ export default defineComponent({
             }}>
               <img src={iconStart} />
               {isLoading.value && <Loading class={styles.loading} color="rgba(63,134,237,1)" size={16} />}
-              K
             </div>
           </>
         )}

+ 44 - 35
src/views/coursewarePlay/index.tsx

@@ -216,7 +216,7 @@ export default defineComponent({
             iframeRef: null,
             videoEle: null,
             tabName: item.name,
-            isLast: j === itemLength, // 当前知识点
+            isAnimation: true, // 当前知识点
             autoPlay: false, //加载完成是否自动播放
             isprepare: false, // 视频是否加载完成
             isRender: false // 是否渲染了
@@ -233,7 +233,6 @@ export default defineComponent({
       popupData.tabActive = item.knowledgePointId
       popupData.itemActive = item.id
       popupData.itemName = item.name
-      // console.log('🚀 ~ list', list)
       nextTick(() => {
         data.itemList = list
         postMessage({
@@ -520,28 +519,37 @@ export default defineComponent({
       popupData.activeIndex = index
       handleStop()
       clearTimeout(acitveTimer.value)
-      acitveTimer.value = setTimeout(() => {
-        const item = data.itemList[index]
-        if (item) {
-          popupData.tabActive = item.knowledgePointId
-          popupData.itemActive = item.id
-          popupData.itemName = item.name
-          popupData.tabName = item.tabName
-          if (item.type == 'SONG') {
-            activeData.model = true
-          }
-          if (item.type === 'VIDEO') {
-            // 自动播放下一个视频
-            clearTimeout(activeData.timer)
-            closeToast()
-            item.autoPlay = true
-            nextTick(() => {
-              item.videoEle?.play()
-              console.error(item.videoEle)
-            })
+
+      const item = data.itemList[index]
+      if (item) {
+        const preItem = data.itemList[index - 1]
+        const nextItem = data.itemList[index + 1]
+        preItem && (preItem.isAnimation = item.knowledgePointId != preItem.knowledgePointId)
+        nextItem && (nextItem.isAnimation = item.knowledgePointId != nextItem.knowledgePointId)
+      }
+      acitveTimer.value = setTimeout(
+        () => {
+          if (item) {
+            popupData.tabActive = item.knowledgePointId
+            popupData.itemActive = item.id
+            popupData.itemName = item.name
+            popupData.tabName = item.tabName
+            if (item.type == 'SONG') {
+              activeData.model = true
+            }
+            if (item.type === 'VIDEO') {
+              // 自动播放下一个视频
+              clearTimeout(activeData.timer)
+              closeToast()
+              item.autoPlay = true
+              nextTick(() => {
+                item.videoEle?.play()
+              })
+            }
           }
-        }
-      }, 800)
+        },
+        item.isAnimation ? 800 : 0
+      )
     }
 
     // 上一个知识点, 下一个知识点
@@ -580,13 +588,14 @@ export default defineComponent({
                   <div
                     key={'index' + mIndex}
                     class={[styles.itemDiv, popupData.activeIndex === mIndex && styles.itemActive]}
-                    style={
-                      mIndex < popupData.activeIndex
+                    style={{
+                      ...(mIndex < popupData.activeIndex
                         ? effects[effectIndex.value].prev
                         : mIndex > popupData.activeIndex
                         ? effects[effectIndex.value].next
-                        : effects[effectIndex.value].current
-                    }
+                        : effects[effectIndex.value].current),
+                      ...(m.isAnimation ? {} : { 'transition-duration': '0s' })
+                    }}
                     onClick={(e: Event) => {
                       e.stopPropagation()
                       clearTimeout(activeData.timer)
@@ -740,16 +749,16 @@ export default defineComponent({
           <div
             class={styles.menu}
             onClick={() => {
-              if (showIndex.value > 0) {
-                effectIndex.value =
-                  effectIndex.value < effects.length - 1 ? effectIndex.value + 1 : 0
-              } else {
-                showIndex.value += 1
-              }
-              setModelOpen()
+              // if (showIndex.value > 0) {
+              //   effectIndex.value =
+              //     effectIndex.value < effects.length - 1 ? effectIndex.value + 1 : 0
+              // } else {
+              //   showIndex.value += 1
+              // }
+              // setModelOpen()
             }}
           >
-            {popupData.tabName} {showIndex.value > 0 ? `动画${effectIndex.value}` : ''}
+            {popupData.tabName}
           </div>
           {data.isCourse && <PlayRecordTime ref={playRef} list={data.itemList} />}
         </div>