elementui抽屉
elementui抽屉的基本用法
Element UI的抽屉组件(Drawer)是一种从页面边缘滑出的面板,常用于显示额外内容或操作。需要在项目中引入Element UI库后使用。
安装Element UI后,在Vue组件中引入Drawer:
import { Drawer } from 'element-ui'
Vue.use(Drawer)
基本模板结构:
<el-drawer
title="标题"
:visible.sync="drawerVisible"
direction="rtl"
size="50%">
<span>抽屉内容</span>
</el-drawer>
<el-button @click="drawerVisible = true">打开抽屉</el-button>
抽屉的常用属性配置
direction属性控制抽屉出现方向,可选值:
- rtl:从右往左(默认)
- ltr:从左往右
- ttb:从上往下
- btt:从下往上
size属性控制抽屉尺寸,支持百分比或具体像素值:
<el-drawer :size="300">...</el-drawer>
wrapperClosable属性控制点击遮罩是否关闭:
<el-drawer :wrapper-closable="false">...</el-drawer>
抽屉的事件处理
常用事件包括:
- open:打开时触发
- opened:打开动画结束时触发
- close:关闭时触发
- closed:关闭动画结束时触发
示例事件处理:
<el-drawer
@open="handleOpen"
@close="handleClose">
</el-drawer>
抽屉的内容布局技巧
抽屉内部可以使用Element UI的布局组件:
<el-drawer>
<el-header>标题区域</el-header>
<el-main>主内容区</el-main>
<el-footer>
<el-button>取消</el-button>
<el-button type="primary">确认</el-button>
</el-footer>
</el-drawer>
抽屉与表单结合使用
常见场景是在抽屉内放置表单:
<el-drawer>
<el-form :model="form" label-width="80px">
<el-form-item label="名称">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item>
<el-button type="primary">提交</el-button>
</el-form-item>
</el-form>
</el-drawer>
自定义抽屉样式
通过自定义class修改样式:
<el-drawer custom-class="my-drawer">...</el-drawer>
CSS样式覆盖:
.my-drawer .el-drawer__header {
padding: 20px;
margin-bottom: 0;
border-bottom: 1px solid #eee;
}
抽屉的嵌套使用
支持多层抽屉嵌套,但需要注意z-index管理:
<el-drawer>
<el-button @click="innerDrawer = true">打开内层抽屉</el-button>
<el-drawer
:append-to-body="true"
title="内层抽屉"
:visible.sync="innerDrawer"
size="50%">
内层内容
</el-drawer>
</el-drawer>






