Skip to content

Layout 布局

💡 组件名:my-layout

布局组件,全局组件,无需额外动态导入组件

需要表格满屏时使用,满屏标签需要添加class="my-fill"

MyLayout 基本使用

vue
<my-layout>
  <el-card class="my-query-box mt8" shadow="never" :body-style="{ paddingBottom: '0' }">
    ...
  </el-card>
  <el-card class="my-fill mt8" shadow="never">
    ...
  </el-card>
</my-layout>

💡 组件名:my-split-panes

窗格拆分组件,需要界面拆分布局时使用

局部导入

ts
import { defineAsyncComponent } from 'vue'
ts
const MySplitPanes = defineAsyncComponent(() => import('/@/components/my-layout/split-panes.vue'))

MySplitPanes 基本使用

左右布局

vue
<MySplitPanes>
  <pane size="50" min-size="30" max-size="70">
  </pane>
  <pane>
  </pane>
</MySplitPanes>

MySplitPanes Props

参数说明类型默认值可选值
horizontal水平排列反之垂直排列Booleanfalse-
push-other-panes其他窗格将被相应地推开Booleantrue-
dbl-click-splitter双击分隔条将会使相邻的窗格最大化或恢复原始大小Booleantrue-
rtl布局将从右到左排列Booleanfalse-
first-splitter第一个分隔条将被激活,允许从一开始就调整窗格的大小Booleanfalse-

MySplitPanes Events

事件名说明返回参数
ready当MySplitPanes准备就绪时触发
resize调整大小所有窗格对象及其尺寸的数组
resized拖动结束所有窗格对象及其尺寸的数组
pane-click点击窗格被点击的窗格对象及其尺寸
pane-maximize窗格最大化最大化的窗格对象及其尺寸
pane-add添加窗格添加的窗格的索引和调整大小后的新窗格数组
pane-remove移除窗格被移除的窗格以及剩余的所有窗格对象及其尺寸的数组
splitter-click点击分隔条紧邻点击分隔条之后的下一个窗格对象(及其尺寸)

Pane Props

参数说明类型默认值可选值
size尺寸[Number, String]--
minSize最小尺寸[Number, String]0-
maxSize最大尺寸[Number, String]100-