<template> <layout class="index_view index-view-layout-left" id="movebox"> <sider class="index_sider" :width="collapseChange ? 64 : 200" hide-trigger id="left_move"> <div class="sider-top"> <slot name="siderTop" /> </div> <slot name="siderContent" /> </sider> <div v-show="!collapseChange" id="move_axis"></div> <layout id="right_move"> <header class="index_header"> <div class="header-left"> <slot name="headerLeft" /> </div> <div class="header-center"> <slot name="headerCenter" /> </div> <div class="header-right"> <slot name="headerRight" /> </div> </header> <content :class="{ 'index_content': true, 'index_tab_content': Object.is(navModel,'tab') ? true : false, 'index_route_content': Object.is(navModel,'route') ? true : false }"> <slot name="tabPageExp" /> <slot name="navPos" /> </content> </layout> </layout> </template> <script lang="ts"> import { Vue, Component, Watch, Prop } from 'vue-property-decorator'; @Component({}) export default class AppIndexViewLayoutLeft extends Vue { /** * 导航模式 * * @memberof AppIndexViewLayoutLeft */ @Prop({ default: 'tab' }) public navModel!: string; /** * 是否折叠 * * @memberof AppIndexViewLayoutLeft */ @Prop({ default: false }) public collapseChange!: boolean; } </script> <style lang="scss"> @import "./index-view-layout-left.scss"; </style>