11wqe1 před 2 měsíci
rodič
revize
ba2bd7771e
2 změnil soubory, kde provedl 54 přidání a 84 odebrání
  1. 53 83
      src/components/sidebarL.vue
  2. 1 1
      src/views/HomeView.vue

+ 53 - 83
src/components/sidebarL.vue

@@ -15,7 +15,7 @@
                     </div>
 
                     <!-- 权限 -->
-                    <div class="TwoBar ulTOne" :style="{zIndex: (item.toolId == 'appStore' || !item.menuName) ? 9999 :''}" v-for="(item,index) in appSignL(fromL.admin.sidebar.list)"
+                    <div class="TwoBar ulTOne" v-for="(item,index) in appSignL(fromL.admin.sidebar.list)"
                         :key="index+1">
 
                         <!-- 渲染菜单类型 -->
@@ -47,27 +47,60 @@
                                             </div>
                                         </div>
                                     </div>
+
                                 </transition>
                         </div>
                     
                         <!-- 渲染平台工具类型 -->
-                        <div  @click.stop="goto(index,item)" style="border-radius: 10px;" 
-                        :style="{background :activeL === (index +1) ?'#E6F0FF':'',zIndex : 10000 }" v-else>
-                            <div >
-                                <div  v-for="(p,pin) in AppCon(item.url)" :key="pin+'p'">
-                                    <div class="menu_left" >
-                                        <div>
-                                            <img class="logo3"  
-                                            :src="activeL === (index +1) ? p.icon : p.activeIcon" 
-                                            alt="">
-                                        </div>
-                                        <span :style="{color : activeL === (index +1) ? '#0051D7' :''}">
-                                            {{ p.name }}
-                                        </span>
+                        <div @click.stop="goto(index,item)" style="border-radius: 10px;" 
+                        :style="{background :activeL === (index +1) ?'#E6F0FF':'',zIndex : 9999 }" v-else>
+                            <div  v-for="(p,pin) in AppCon(item.url)" :key="pin+'p'">
+                                <div class="menu_left" >
+                                    <div>
+                                        <img class="logo3"  
+                                        :src="activeL === (index +1) ? p.icon : p.activeIcon" 
+                                        alt="">
                                     </div>
-                                    
+                                    <span :style="{color : activeL === (index +1) ? '#0051D7' :''}">
+                                        {{ p.name }}
+                                    </span>
                                 </div>
                             </div>
+
+                            <transition name="slide" style="z-index: -10;">
+                                    <!-- 应用中心 -->
+                                    <div class="ulTCopy" style="z-index: -10;"  v-if="item.toolId == 'appStore'">
+                                        <div class="ulTCopyTit">
+                                            <span>CocoFlow</span>
+                                            <!-- <span @click="closeCopy" class="cha" style="color: #6B7280;font-size: 23px;cursor: pointer;">⨯</span> -->
+                                        </div>
+                                        <div class="ulTCopyHei" >
+                                            <span style="color: #00000066;">最近使用</span>
+                                            <div class="ulTCopyTxt"  
+                                            v-for="(i,ind) in cocoFlowList[0]" @click="openNewWindow(i.url)" :key="ind+'ab'">
+                                                <div  class="ulTCopyTxtCon">
+                                                        <img style="width: 20px;height: 20px;border-radius: 10px;object-fit: contain;margin-right: 5px;"  
+                                                        :src="JSON.parse(i.json).icon" 
+                                                        alt="">
+                                                        <div class="ovlH">{{ i.name }}</div>
+                                                </div>
+                                            </div>
+                                            <span style="color: #00000066;">我的收藏</span>
+
+                                            <div class="ulTCopyTxt"
+                                            v-for="(i,ind) in cocoFlowList[1]" @click="openNewWindow(i.url)" :key="ind+'a'">
+                                                    <div class="ulTCopyTxtCon" >
+                                                        <img style="width: 20px;height: 20px;border-radius: 10px;object-fit: contain;margin-right: 5px;"  
+                                                        :src="JSON.parse(i.json).icon" 
+                                                        alt="">
+                                                        <div class="ovlH">{{ i.name }}</div>
+                                                </div>
+                                            </div>
+                                        </div>
+
+                                    </div>
+
+                                </transition>
                         </div>
                     </div>
                 
@@ -79,43 +112,7 @@
                 </div>
             </div>
            
-              <!-- 二级导航 -->
-              <transition name="slide">
-                <div class="ulTCopy2" v-if="isShow" >
-                    <div class="ulTCopyTit">
-                        <span>CocoFlow</span>
-                        <span @click="closeCopy" class="cha" style="color: #6B7280;font-size: 23px;cursor: pointer;">⨯</span>
-                    </div>
-                    <div class="ulTCopyHei" >
-                        <span style="color: #00000066;">最近使用</span>
-                        <div class="ulTCopyTxt"  
-                        v-for="(i,ind) in cocoFlowList[0]" @click="openNewWindow(i.url)" :key="ind+'ab'">
-                            <div  class="ulTCopyTxtCon">
-                                    <img style="width: 20px;height: 20px;border-radius: 10px;object-fit: contain;margin-right: 5px;"  
-                                    :src="JSON.parse(i.json).icon" 
-                                    alt="">
-                                    <div class="ovlH">{{ i.name }}</div>
-                            </div>
-                        </div>
-                        <span style="color: #00000066;">我的收藏</span>
-
-                        <div class="ulTCopyTxt"
-                        v-for="(i,ind) in cocoFlowList[1]" @click="openNewWindow(i.url)" :key="ind+'a'">
-                                <div class="ulTCopyTxtCon" >
-                                    <img style="width: 20px;height: 20px;border-radius: 10px;object-fit: contain;margin-right: 5px;"  
-                                    :src="JSON.parse(i.json).icon" 
-                                    alt="">
-                                    <div class="ovlH">{{ i.name }}</div>
-                            </div>
-                        </div>
-                    </div>
-
-                </div>
-            </transition>
-
-
-
-            <div v-if="isShow" @click="closeCopy" style="width: 100vw;height: 100vh;position: absolute;left: 0;top: 0;z-index: 1;"></div>
+           
           
         </div>
 </template>
@@ -180,7 +177,7 @@ import { API_CONFIG } from "@/common/apiConfig";
                 // 二级选中第几个
                 activeLTwo: null,
                 cocoFlowList:[],
-                isShow:false
+
             }
         },
         methods: {
@@ -209,10 +206,7 @@ import { API_CONFIG } from "@/common/apiConfig";
                     // 取消操作
                 });
             },
-            // 关闭二级导航遮罩层
-            closeCopy(){
-                this.isShow = false
-            },
+
             // 点击一级导航
             async goto(index,val = null){
                 // console.log('goto',val);
@@ -224,7 +218,6 @@ import { API_CONFIG } from "@/common/apiConfig";
                     // 点击首页清空内容,并把标识去除
                     await store.commit('user/SET_AppSIGN', '')
                     this.$emit('update:urlAddress','')
-                    this.isShow = false
 
                     this.$emit('getPer')
                     // 清空选中状态
@@ -235,17 +228,6 @@ import { API_CONFIG } from "@/common/apiConfig";
            
                     this.activeLTwo = ''
 
-                    // 判断
-                    if (val.toolId == 'appStore') {
-                        if (!this.isShow) {
-                            this.isShow = true
-                            this.cocoFlowList = []
-                            this.getCocoList()
-                        }
-                        return
-                    }else{
-                        this.isShow = false
-                    }
 
                     // 点击相同应用不刷新  
                     if (this.appSign == val.toolId) return
@@ -301,7 +283,7 @@ import { API_CONFIG } from "@/common/apiConfig";
 
                     this.$emit('AddAppJson',pl)
             },
-            getCocoList(){
+            getData(){
                 let params = [
                     {
                         functionName: API_CONFIG.ajax_appStoreSave.functionName,
@@ -442,12 +424,12 @@ import { API_CONFIG } from "@/common/apiConfig";
 .left .ulT { 
   width: 100%;
   height: 100%;
-  
   padding: 8px 0;
   box-sizing: border-box;
   display: flex;
   gap: 10px;
   overflow: auto;
+  overflow-x: hidden;
   flex-direction: column;
   background-color: #ffffff;
 }
@@ -483,18 +465,6 @@ import { API_CONFIG } from "@/common/apiConfig";
     position: relative;
     padding:0 8px;box-sizing: border-box;
 }
-.ulTCopy2{
-    position: absolute;
-    left: -256px;
-    top: 0;
-    height: 100%;
-    width: 256px;
-    z-index: 99999;
-    background-color: #ffffff;
-    overflow: visible; 
-    transform: translateX(336px); /* 初始位置在视图之外 */
-    box-shadow: inset 2px 0 8px rgba(0, 0, 0, 0.1),5px 3px 5px 0px rgba(0, 0, 0, 0.1);
-}
 
 .slide-enter-active, .slide-leave-active {
   transition: transform 0.5s ease;

+ 1 - 1
src/views/HomeView.vue

@@ -128,7 +128,7 @@ export default {
     // 获取学校权限与组织权限,优先使用学校权限,其次使用组织权限
     getPer() {
       this.$refs.homepageLRef.getData()
-
+      this.$refs.sidebarLRef.getData()
       let params = [
         {
           functionName: API_CONFIG.ajax_schoolPermission.functionName, // 调用存储过程的名称