ai-manus/chat-client/library/layouts/VabLayoutHorizontal/index.vue

84 lines
1.4 KiB
Vue
Raw Permalink Normal View History

2025-07-18 16:38:18 +08:00
<!-- 横向布局 -->
<script lang="ts" setup>
defineProps({
collapse: {
type: Boolean,
default() {
return false
},
},
fixedHeader: {
type: Boolean,
default() {
return true
},
},
showTabs: {
type: Boolean,
default() {
return true
},
},
device: {
type: String,
default() {
return 'desktop'
},
},
})
</script>
<template>
<div
class="vab-layout-horizontal"
:class="{
fixed: fixedHeader,
'no-tabs-bar': !showTabs,
}"
>
<div
class="vab-layout-header"
:class="{
'fixed-header': fixedHeader,
}"
>
<vab-header layout="horizontal" />
<div
v-show="showTabs"
:class="{
'vab-tabs-horizontal': showTabs,
}"
>
<div class="vab-main">
<vab-tabs />
</div>
</div>
</div>
<div class="vab-main main-padding">
<vab-app-main />
</div>
</div>
</template>
<style lang="scss" scoped>
.vab-layout-horizontal {
:deep() {
.vab-main {
width: 92% !important;
margin: auto !important;
}
}
.vab-tabs-horizontal {
background: var(--el-color-white);
box-shadow: $base-box-shadow;
}
.vab-nav {
.fold-unfold {
display: none;
}
}
}
</style>