Forráskód Böngészése

feat:下个动画添加分组

ananzhusen 1 éve
szülő
commit
f6de9cb864
1 módosított fájl, 41 hozzáadás és 0 törlés
  1. 41 0
      src/views/components/PenAnimates.vue

+ 41 - 0
src/views/components/PenAnimates.vue

@@ -123,17 +123,33 @@
                 @change="changeAnimateAutoPlay($event, item)"
               />
             </div>
+            <div
+              class="form-item mt-8"
+            >
+              <label>下个动画类型</label>
+              <t-radio-group v-model="item.temType" @change="item.nextAnimate = ''">
+                <t-radio value="id">图元</t-radio>
+                <t-radio value="tag">组</t-radio>
+              </t-radio-group>
+            </div>
             <div
               class="form-item mt-8"
               title="当前动画结束后自动播放下一个对象的动画"
             >
               <label>下个动画</label>
               <t-tree-select
+                v-if="item.temType === 'id'"
                 v-model="item.nextAnimate"
                 :data="penTree"
                 filterable
                 placeholder="无"
               />
+              <t-select
+              v-else
+              v-model="item.nextAnimate"
+              :options="groups"
+              placeholder="组"
+            />
             </div>
           </template>
           <template v-else>
@@ -182,17 +198,33 @@
                 @change="changeAnimateAutoPlay($event, item)"
               />
             </div>
+            <div
+              class="form-item mt-8"
+            >
+              <label>下个动画类型</label>
+              <t-radio-group v-model="item.temType" @change="item.nextAnimate = ''">
+                <t-radio value="id">图元</t-radio>
+                <t-radio value="tag">组</t-radio>
+              </t-radio-group>
+            </div>
             <div
               class="form-item mt-8"
               title="当前动画结束后自动播放下一个对象的动画"
             >
               <label>下个动画</label>
               <t-tree-select
+                v-if="item.temType === 'id'"
                 v-model="item.nextAnimate"
                 :data="penTree"
                 filterable
                 placeholder="无"
               />
+              <t-select
+              v-else
+              v-model="item.nextAnimate"
+              :options="groups"
+              placeholder="组"
+            />
             </div>
           </template>
         </t-collapse-panel>
@@ -276,6 +308,7 @@ const changeAnimateName = (event, item) => {
 };
 
 const penTree: any = ref([]);
+const groups: any = ref([]);
 
 const openedCollapses = ref([0]);
 
@@ -423,6 +456,13 @@ onBeforeMount(() => {
     return i
   }
   );
+  groups.value = [];
+  const d = meta2d.store.data as any;
+  if (d.groups) {
+    for (const item of d.groups) {
+      groups.value.push({ label: item, value: item });
+    }
+  }
 });
 onBeforeUnmount(() => {
   meta2d.off('animateEnd', cancleAnimatePlayState);
@@ -449,6 +489,7 @@ const addAnimate = () => {
   openedCollapses.value.push(props.pen.animations.length);
   props.pen.animations.push({
     name: '动画' + (props.pen.animations.length + 1),
+    temType: 'id'
   });
 };