Procházet zdrojové kódy

fix:缺陷22 画布图元添加有限次数动画,播放完动画后,动画控制图标不会恢复到初始状态

Wind-Breaker1 před 1 rokem
rodič
revize
93e2d380ee
1 změnil soubory, kde provedl 10 přidání a 3 odebrání
  1. 10 3
      src/views/components/PenAnimates.vue

+ 10 - 3
src/views/components/PenAnimates.vue

@@ -221,7 +221,7 @@
 </template>
 
 <script lang="ts" setup>
-import { onBeforeMount, ref, watch, onUnmounted } from 'vue';
+import { onBeforeMount, ref, watch, onUnmounted,onBeforeUnmount } from 'vue';
 
 import { getPenTree } from '@/services/common';
 import { deepClone } from '@meta2d/core';
@@ -409,10 +409,17 @@ onBeforeMount(() => {
     // @ts-ignore
     isPlaying.value = p?.currentAnimation;
   }
-
+  meta2d.on('animateEnd', cancleAnimatePlayState);
   penTree.value = getPenTree();
 });
-
+onBeforeUnmount(() => {
+  meta2d.off('animateEnd', cancleAnimatePlayState);
+})
+const cancleAnimatePlayState = (pen) => {
+  if(pen.id === props.pen.id) {
+    isPlaying.value = -1;
+  }
+}
 const watcher = watch(
   () => props.pen.id,
   () => {