|
@@ -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;
|