Files
certd/packages/ui/certd-client/src/views/crud/basis/layout-custom/custom-layout.vue
T
2023-01-29 15:26:45 +08:00

75 lines
1.8 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<template>
<div class="custom-layout">
<div class="layout-header">
<!-- 关键插槽查询 -->
<slot name="search"></slot>
<!-- 关键插槽工具条 -->
<slot name="toolbar"></slot>
</div>
<div class="layout-top">
<!-- 关键插槽动作条 -->
<slot name="actionbar"></slot>
<!-- 上翻页条 -->
<slot name="pagination"></slot>
</div>
<!-- 高度需要自适应撑开可以通过flex:1 -->
<div class="layout-body">
<!-- 默认插槽 -->
<slot></slot>
<!-- 关键插槽表格 -->
<slot name="table"></slot>
<!-- 关键插槽表单 -->
<slot name="form"></slot>
</div>
<div class="layout-footer">
<!-- 关键插槽分页条 -->
<slot name="pagination"></slot>
</div>
</div>
</template>
<script lang="ts">
import { defineComponent } from "vue";
/**
* 自定义布局
*/
export default defineComponent({
name: "CustomLayout"
});
</script>
<style lang="less">
.custom-layout {
height: 100%;
display: flex;
flex-direction: column;
.layout-header {
padding: 10px 10px 5px 10px;
display: flex;
align-items: center;
justify-content: space-between;
}
.layout-top {
display: flex;
align-items: center;
justify-content: space-between;
padding: 5px 10px 5px 10px;
}
.layout-body {
flex: 1; //重要,自适应撑开高度,表格固定表头必须
overflow-y: auto;
}
.fs-crud-actionbar {
display: flex;
align-items: center;
}
.fs-crud-pagination {
text-align: right;
padding: 5px 10px 5px 10px;
}
}
</style>