88 lines
1.9 KiB
Vue
88 lines
1.9 KiB
Vue
<docs>
|
||
---
|
||
order: 5
|
||
title:
|
||
zh-CN: 多层抽屉
|
||
en-US: Multi-level drawer
|
||
---
|
||
|
||
## zh-CN
|
||
|
||
在抽屉内打开新的抽屉,用以解决多分支任务的复杂状况。
|
||
|
||
## en-US
|
||
|
||
Open a new drawer on top of an existing drawer to handle multi branch tasks.
|
||
|
||
</docs>
|
||
|
||
<template>
|
||
<a-button type="primary" @click="showDrawer">Open</a-button>
|
||
<a-drawer
|
||
title="Multi-level drawer"
|
||
width="520"
|
||
:closable="false"
|
||
:visible="visible"
|
||
@close="onClose"
|
||
>
|
||
<a-button type="primary" @click="showChildrenDrawer">Two-level drawer</a-button>
|
||
<a-drawer
|
||
title="Two-level Drawer"
|
||
width="320"
|
||
:closable="false"
|
||
:visible="childrenDrawer"
|
||
@close="onChildrenDrawerClose"
|
||
>
|
||
<a-button type="primary" @click="showChildrenDrawer">This is two-level drawer</a-button>
|
||
</a-drawer>
|
||
<div
|
||
:style="{
|
||
position: 'absolute',
|
||
bottom: 0,
|
||
width: '100%',
|
||
borderTop: '1px solid #e8e8e8',
|
||
padding: '10px 16px',
|
||
textAlign: 'right',
|
||
left: 0,
|
||
background: '#fff',
|
||
borderRadius: '0 0 4px 4px',
|
||
}"
|
||
>
|
||
<a-button style="margin-right: 8px" @click="onClose">Cancel</a-button>
|
||
<a-button type="primary" @click="onClose">Submit</a-button>
|
||
</div>
|
||
</a-drawer>
|
||
</template>
|
||
<script lang="ts">
|
||
import { defineComponent, ref } from 'vue';
|
||
|
||
export default defineComponent({
|
||
setup() {
|
||
const visible = ref<boolean>(false);
|
||
|
||
const childrenDrawer = ref<boolean>(false);
|
||
|
||
const showDrawer = () => {
|
||
visible.value = true;
|
||
};
|
||
const onClose = () => {
|
||
visible.value = false;
|
||
};
|
||
const showChildrenDrawer = () => {
|
||
childrenDrawer.value = true;
|
||
};
|
||
const onChildrenDrawerClose = () => {
|
||
childrenDrawer.value = false;
|
||
};
|
||
return {
|
||
visible,
|
||
childrenDrawer,
|
||
showDrawer,
|
||
onClose,
|
||
showChildrenDrawer,
|
||
onChildrenDrawerClose,
|
||
};
|
||
},
|
||
});
|
||
</script>
|