| 
														
															@@ -1,4 +1,11 @@ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-import { defineComponent, onMounted, onUnmounted, reactive, ref } from 'vue'; 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+import { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+  defineComponent, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+  onMounted, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+  onUnmounted, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+  reactive, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+  ref, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+  watch 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+} from 'vue'; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import styles from './index.module.less'; 
														 | 
														
														 | 
														
															 import styles from './index.module.less'; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import { postMessage } from '@/helpers/native-message'; 
														 | 
														
														 | 
														
															 import { postMessage } from '@/helpers/native-message'; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 import icon_title from './images/icon-title.png'; 
														 | 
														
														 | 
														
															 import icon_title from './images/icon-title.png'; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -37,11 +44,16 @@ export default defineComponent({ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     modeType: { 
														 | 
														
														 | 
														
															     modeType: { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       type: String, 
														 | 
														
														 | 
														
															       type: String, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       default: '' 
														 | 
														
														 | 
														
															       default: '' 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    }, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    show: { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      type: Boolean, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      default: false 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     } 
														 | 
														
														 | 
														
															     } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   }, 
														 | 
														
														 | 
														
															   }, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															   setup(props, { expose }) { 
														 | 
														
														 | 
														
															   setup(props, { expose }) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     const route = useRoute(); 
														 | 
														
														 | 
														
															     const route = useRoute(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     const state = reactive({ 
														 | 
														
														 | 
														
															     const state = reactive({ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      modeType: '' as any, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       platform: route.query.platform, // microapp 老师端应用里面打开单独处理返回逻辑 
														 | 
														
														 | 
														
															       platform: route.query.platform, // microapp 老师端应用里面打开单独处理返回逻辑 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       win: route.query.win, 
														 | 
														
														 | 
														
															       win: route.query.win, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       settingStatus: false, 
														 | 
														
														 | 
														
															       settingStatus: false, 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -150,17 +162,17 @@ export default defineComponent({ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       } 
														 | 
														
														 | 
														
															       } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															       if (ev.data.api === 'resetPlay') { 
														 | 
														
														 | 
														
															       if (ev.data.api === 'resetPlay') { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        reesetSetting(); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        resetSetting(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       } 
														 | 
														
														 | 
														
															       } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     }; 
														 | 
														
														 | 
														
															     }; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															-    const reesetSetting = () => { 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    const resetSetting = () => { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       try { 
														 | 
														
														 | 
														
															       try { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         let dataJson = props.dataJson; 
														 | 
														
														 | 
														
															         let dataJson = props.dataJson; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         if (route.query.dataJson) { 
														 | 
														
														 | 
														
															         if (route.query.dataJson) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           dataJson = JSON.parse(route.query.dataJson as any); 
														 | 
														
														 | 
														
															           dataJson = JSON.parse(route.query.dataJson as any); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         } 
														 | 
														
														 | 
														
															         } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        console.log(dataJson, 'dataJson'); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        console.log(dataJson, 'dataJson', props.dataJson); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															         setting.element = dataJson.element; 
														 | 
														
														 | 
														
															         setting.element = dataJson.element; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         setting.beat = dataJson.beat; 
														 | 
														
														 | 
														
															         setting.beat = dataJson.beat; 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -176,8 +188,24 @@ export default defineComponent({ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       } 
														 | 
														
														 | 
														
															       } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     }; 
														 | 
														
														 | 
														
															     }; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    // watch( 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    //   () => props.show, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    //   val => { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    //     console.log(val, props.show); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    //     if (!val) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    //       // resetSetting(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    //       handleStop(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    //     } else { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    //       resetSetting(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    //     } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    //   } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+    // ); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     onMounted(() => { 
														 | 
														
														 | 
														
															     onMounted(() => { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-      reesetSetting(); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      if (route.query.modeType) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        state.modeType = route.query.modeType; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      resetSetting(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       state.speedList.forEach((item: any) => { 
														 | 
														
														 | 
														
															       state.speedList.forEach((item: any) => { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         if (item.value === setting.speed) item.color = '#1CACF1'; 
														 | 
														
														 | 
														
															         if (item.value === setting.speed) item.color = '#1CACF1'; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       }); 
														 | 
														
														 | 
														
															       }); 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -193,17 +221,18 @@ export default defineComponent({ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     }); 
														 | 
														
														 | 
														
															     }); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															     expose({ 
														 | 
														
														 | 
														
															     expose({ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-      reesetSetting 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+      resetSetting 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     }); 
														 | 
														
														 | 
														
															     }); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															     return () => ( 
														 | 
														
														 | 
														
															     return () => ( 
														 | 
													
												
											
												
													
														| 
														 | 
														
															       <div 
														 | 
														
														 | 
														
															       <div 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         class={[ 
														 | 
														
														 | 
														
															         class={[ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           styles.tempoPractice, 
														 | 
														
														 | 
														
															           styles.tempoPractice, 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           state.win === 'pc' ? styles.pc : '', 
														 | 
														
														 | 
														
															           state.win === 'pc' ? styles.pc : '', 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-          state.platform === 'modal' ? styles.modal : '' 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          state.platform === 'modal' ? styles.modal : '', 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          state.modeType === 'courseware' ? styles.courseware : '' 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         ]}> 
														 | 
														
														 | 
														
															         ]}> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         <div class={styles.head}> 
														 | 
														
														 | 
														
															         <div class={styles.head}> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-          {props.modeType !== 'courseware' && ( 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          {state.modeType !== 'courseware' && ( 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             <div 
														 | 
														
														 | 
														
															             <div 
														 | 
													
												
											
												
													
														| 
														 | 
														
															               class={[styles.back, styles.iconBack]} 
														 | 
														
														 | 
														
															               class={[styles.back, styles.iconBack]} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															               onClick={goback} 
														 | 
														
														 | 
														
															               onClick={goback} 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -214,7 +243,7 @@ export default defineComponent({ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           <div class={styles.title}> 
														 | 
														
														 | 
														
															           <div class={styles.title}> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             <img src={icon_title} /> 
														 | 
														
														 | 
														
															             <img src={icon_title} /> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           </div> 
														 | 
														
														 | 
														
															           </div> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-          {props.modeType !== 'courseware' && ( 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+          {state.modeType !== 'courseware' && ( 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             <div 
														 | 
														
														 | 
														
															             <div 
														 | 
													
												
											
												
													
														| 
														 | 
														
															               class={styles.back} 
														 | 
														
														 | 
														
															               class={styles.back} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															               style={{ cursor: 'pointer' }} 
														 | 
														
														 | 
														
															               style={{ cursor: 'pointer' }} 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -239,10 +268,7 @@ export default defineComponent({ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 ]}> 
														 | 
														
														 | 
														
															                 ]}> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 {item.map((child: any, jIndex: number) => ( 
														 | 
														
														 | 
														
															                 {item.map((child: any, jIndex: number) => ( 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                   <div 
														 | 
														
														 | 
														
															                   <div 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                    class={[styles.beat, child.selected ? styles.active : '']} 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                    onClick={(e: any) => { 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                      e.stopPropagation(); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-                    }}> 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    class={[styles.beat, child.selected ? styles.active : '']}> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                     <div class={styles.direction}> 
														 | 
														
														 | 
														
															                     <div class={styles.direction}> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                       <div 
														 | 
														
														 | 
														
															                       <div 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                         class={styles.up} 
														 | 
														
														 | 
														
															                         class={styles.up} 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -283,11 +309,7 @@ export default defineComponent({ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           </div> 
														 | 
														
														 | 
														
															           </div> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															         </div> 
														 | 
														
														 | 
														
															         </div> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															  
														 | 
														
														 | 
														
															  
														 | 
													
												
											
												
													
														| 
														 | 
														
															-        <div 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-          class={styles.footer} 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-          onClick={(e: any) => { 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-            e.stopPropagation(); 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															-          }}> 
														 | 
														
														 | 
														
															 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+        <div class={styles.footer}> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           {/* 播放 */} 
														 | 
														
														 | 
														
															           {/* 播放 */} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           <div class={styles.play} onClick={handlePlay}> 
														 | 
														
														 | 
														
															           <div class={styles.play} onClick={handlePlay}> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             {setting.playState === 'pause' ? ( 
														 | 
														
														 | 
														
															             {setting.playState === 'pause' ? ( 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -322,6 +344,15 @@ export default defineComponent({ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 if (setting.speed <= 40) return; 
														 | 
														
														 | 
														
															                 if (setting.speed <= 40) return; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 setting.speed -= 1; 
														 | 
														
														 | 
														
															                 setting.speed -= 1; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 handleStop(); 
														 | 
														
														 | 
														
															                 handleStop(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                state.speedList.forEach((item: any) => { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                  if (item.value === setting.speed) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    item.color = '#1CACF1'; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    setting.speed = setting.speed; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                  } else { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    item.color = '#060606'; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                  } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                }); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															               }} 
														 | 
														
														 | 
														
															               }} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             /> 
														 | 
														
														 | 
														
															             /> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             <Popover 
														 | 
														
														 | 
														
															             <Popover 
														 | 
													
												
											
										
											
												
													
														 | 
														
															@@ -354,6 +385,15 @@ export default defineComponent({ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 if (setting.speed >= 200) return; 
														 | 
														
														 | 
														
															                 if (setting.speed >= 200) return; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 setting.speed += 1; 
														 | 
														
														 | 
														
															                 setting.speed += 1; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															                 handleStop(); 
														 | 
														
														 | 
														
															                 handleStop(); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+ 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                state.speedList.forEach((item: any) => { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                  if (item.value === setting.speed) { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    item.color = '#1CACF1'; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    setting.speed = setting.speed; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                  } else { 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                    item.color = '#060606'; 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                  } 
														 | 
													
												
											
												
													
														| 
														 | 
														
															 
														 | 
														
														 | 
														
															+                }); 
														 | 
													
												
											
												
													
														| 
														 | 
														
															               }} 
														 | 
														
														 | 
														
															               }} 
														 | 
													
												
											
												
													
														| 
														 | 
														
															             /> 
														 | 
														
														 | 
														
															             /> 
														 | 
													
												
											
												
													
														| 
														 | 
														
															           </div> 
														 | 
														
														 | 
														
															           </div> 
														 |