<template>
<div :class="['pl-portal-panel',isHover?'pl-portal-panelHover':'']"
@mouseenter="isHover=true"
@mouseleave="isHover=false"
:style="panelStyle"
>
<p-tabs ref="cmp-tabs" v-model="defTabKey"
:hasMoreMenu="false"
:hasContextMenu="false">
<p-tabpanel
v-for="(item,index) in tabs" :key="item.id"
:close="false"
:title="item.name"
:name="item.resId"
:url="hasPower(item.resUrl)?rootUrl+item.resUrl:''"
:itemData="item"
>
<div class="pl-noPower" v-if="!hasPower(item.resUrl)">
<i class="iconfont icon-quanxian"></i>
<div class="txt">暂无功能权限!</div>
</div>
</p-tabpanel>
</p-tabs>
</div>
</template>
<script>
import {PTabs,PTabpanel} from '@main/components/tabpanel'
import {baseURL,codeProjectName,requestUrl} from '@main/config'
export default {
components:{
PTabs,PTabpanel
},
props:{
tabList:{
type:Array,
default:[]
},
height:{
type:[String, Number],
require:true
}
},
data(){
let tabs = this.tabList;
let l = tabs.length;
return {
defTabKey:l>0?tabs[0].resId:'',
isHover:false,
curIndex:0,
tabs:tabs,
rootUrl:baseURL+codeProjectName
}
},
computed:{
panelStyle(){
let h = this.height>100?this.height:100;
let stl = {
// height:(h-58-12)+'px',//总的-头部-边距
height:h+'px',
position:'relative'
}
return stl;
}
},
methods:{
hasPower(url){
let powers = this.$store.getters.powerList;
for(let i=powers.length-1;i>=0;i--){
if(url.indexOf(powers[i].resUrl)>-1){
return true
}
}
return false;
},
doRender(){
this.$refs['cmp-tabs'].resize();
}
}
}
</script>
<style scoped>
</style>