瀏覽代碼

监测播放状态变化

liushengqiang 2 年之前
父節點
當前提交
053bf90b78
共有 2 個文件被更改,包括 14 次插入12 次删除
  1. 13 1
      src/pages/detail/runtime.ts
  2. 1 11
      src/subpages/colexiu/buttons/player.tsx

+ 13 - 1
src/pages/detail/runtime.ts

@@ -143,8 +143,21 @@ const syncStepIndex = (i: number) => {
   refreshIndex(detailState.times[i]?.time)
 }
 
+/**播放状态改变时,向父页面发送事件 */
+const sendParentMessage = (playState: string) => {
+  window.parent.postMessage(
+    {
+      api: 'headerTogge',
+      playState: playState
+    },
+    '*'
+  )
+}
 watchEffect(() => {
   detailState.maskStatus = state.playState === 'play'
+  if(['play', 'pause'].includes(state.playState)) {
+    sendParentMessage(state.playState)
+  }
 })
 
 const syncPlayState = async () => {
@@ -825,7 +838,6 @@ export const setPlayState = async () => {
     await toggleState()
     return
   }
-  // console.log('设置播放')
   setPlayerView()
   setTick(setTickStop)
 }

+ 1 - 11
src/subpages/colexiu/buttons/player.tsx

@@ -14,7 +14,6 @@ export default defineComponent({
     const [wiredStatus] = useWiredHeadsetCheck()
 
     const reset = () => {
-      sendMessage()
       if (detailState.activeTick > -1) {
         return
       }
@@ -34,15 +33,7 @@ export default defineComponent({
         RuntimeUtils.stopTick()
       }
     }
-    const sendMessage = () => {
-      window.parent.postMessage(
-        {
-          api: 'headerTogge',
-          playState: runtime.playState
-        },
-        '*'
-      )
-    }
+    
     onMounted(() => {
       window.addEventListener('message', changePlay)
     })
@@ -72,7 +63,6 @@ export default defineComponent({
                   disabled={detailState.activeDetail?.isAppPlay && detailState.midiPlayIniting}
                   onClick={() => {
                     RuntimeUtils.setPlayState()
-                    sendMessage()
                   }}
                 >
                   <div class={styles.schedule}>