Alsmile vor 1 Jahr
Ursprung
Commit
50e9100f24
1 geänderte Dateien mit 23 neuen und 12 gelöschten Zeilen
  1. 23 12
      src/views/components/Graphics.vue

+ 23 - 12
src/views/components/Graphics.vue

@@ -149,13 +149,14 @@
       v-if="contextmenu.visible"
       tabindex="0"
       :style="contextmenu.style"
-      @blu1r="contextmenu.visible = false"
+      @blur="contextmenu.visible = false"
     >
       <t-menu class="context-menu" @change="onMenu" expandType="popup">
         <t-submenu
           value="move"
           title="移动到"
           v-if="contextmenu.subMenus.length"
+          :disabled="!contextmenu.component.component"
         >
           <t-menu-item
             v-for="subMenu in contextmenu.subMenus"
@@ -165,7 +166,9 @@
           </t-menu-item>
         </t-submenu>
         <t-menu-item value="edit"> 编辑 </t-menu-item>
-        <t-menu-item value="del"> 删除 </t-menu-item>
+        <t-menu-item value="del" :disabled="!contextmenu.component.component">
+          删除
+        </t-menu-item>
       </t-menu>
     </div>
 
@@ -666,7 +669,7 @@ const onContextMenu = async (e: MouseEvent, group: string, item: any) => {
   e.preventDefault();
   e.stopPropagation();
 
-  if (activedGroup.value !== '我的' || !item.component) {
+  if (activedGroup.value !== '我的') {
     return;
   }
 
@@ -707,15 +710,23 @@ const onMenu = async (val: string) => {
 
   switch (val) {
     case 'edit':
-      autoSave();
-      router.push({
-        path: '/',
-        query: {
-          id,
-          c: 1,
-          r: Date.now() + '',
-        },
-      });
+      if (contextmenu.component.component) {
+        autoSave();
+        router.push({
+          path: '/',
+          query: {
+            id,
+            c: 1,
+            r: Date.now() + '',
+          },
+        });
+      } else {
+        let url = 'https://3d.le5le.com/?id=';
+        if (import.meta.env.VITE_TRIAL == 0 && (window as any).url3D) {
+          url = (window as any).url3D;
+        }
+        window.open(url + id, '_blank');
+      }
 
       break;
     case 'del':