ant-design/components/drawer/demo/multi-level-drawer.md
yykoypj 766748a501
feat: change visible to open for drawer (#36750)
* feat: change visible to open for Drawer

* refactor: use open internal either

* feat: add warning when use visible

* test: Fix test

Co-authored-by: 二货机器人 <smith3816@gmail.com>
2022-08-23 16:22:00 +08:00

72 lines
1.4 KiB
Markdown

---
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.
```tsx
import { Button, Drawer } from 'antd';
import React, { useState } from 'react';
const App: React.FC = () => {
const [open, setOpen] = useState(false);
const [childrenDrawer, setChildrenDrawer] = useState(false);
const showDrawer = () => {
setOpen(true);
};
const onClose = () => {
setOpen(false);
};
const showChildrenDrawer = () => {
setChildrenDrawer(true);
};
const onChildrenDrawerClose = () => {
setChildrenDrawer(false);
};
return (
<>
<Button type="primary" onClick={showDrawer}>
Open drawer
</Button>
<Drawer title="Multi-level drawer" width={520} closable={false} onClose={onClose} open={open}>
<Button type="primary" onClick={showChildrenDrawer}>
Two-level drawer
</Button>
<Drawer
title="Two-level Drawer"
width={320}
closable={false}
onClose={onChildrenDrawerClose}
open={childrenDrawer}
>
This is two-level drawer
</Drawer>
</Drawer>
</>
);
};
export default App;
```
<style>
[data-theme="dark"] .site-multi-level-drawer-footer {
border-top: 1px solid #303030;
background: #1f1f1f;
}
</style>