You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ant-design-vue/components/vc-drawer/demo/change-remove.jsx

112 lines
3.1 KiB

import Drawer from '../src/index';
import Menu from '../../menu/index';
import Icon from '../../icon/index';
import '../assets/index.less';
import '../../menu/style/index';
import '../../icon/style/index';
const SubMenu = Menu.SubMenu;
const MenuItemGroup = Menu.ItemGroup;
export default {
data() {
return {
show: true,
};
},
mounted() {
this.$nextTick(() => {
setTimeout(() => {
// this.show = false
}, 2000);
});
},
render() {
const drawerProps = {
props: {
wrapperClassName: 'drawer-wrapper',
width: '20vw',
},
slots: {
handler: () => {
return (
<div class="drawer-handle" onClick={() => alert('click')}>
<i class="drawer-handle-icon" />
</div>
);
},
},
};
return (
<div>
{this.show && (
<Drawer {...drawerProps}>
<Menu defaultSelectedKeys={['1']} defaultOpenKeys={['sub1']} mode="inline">
<SubMenu
key="sub1"
title={
<span>
<Icon type="mail" />
<span>Navigation One</span>
</span>
}
>
<MenuItemGroup key="g1" title="Item 1">
<Menu.Item key="1">Option 1</Menu.Item>
<Menu.Item key="2">Option 2</Menu.Item>
</MenuItemGroup>
<MenuItemGroup key="g2" title="Item 2">
<Menu.Item key="3">Option 3</Menu.Item>
<Menu.Item key="4">Option 4</Menu.Item>
</MenuItemGroup>
</SubMenu>
<SubMenu
key="sub2"
title={
<span>
<Icon type="appstore" />
<span>Navigation Two</span>
</span>
}
>
<Menu.Item key="5">Option 5</Menu.Item>
<Menu.Item key="6">Option 6</Menu.Item>
<SubMenu key="sub3" title="Submenu">
<Menu.Item key="7">Option 7</Menu.Item>
<Menu.Item key="8">Option 8</Menu.Item>
</SubMenu>
</SubMenu>
<SubMenu
key="sub4"
title={
<span>
<Icon type="setting" />
<span>Navigation Three</span>
</span>
}
>
<Menu.Item key="9">Option 9</Menu.Item>
<Menu.Item key="10">Option 10</Menu.Item>
<Menu.Item key="11">Option 11</Menu.Item>
<Menu.Item key="12">Option 12</Menu.Item>
</SubMenu>
</Menu>
</Drawer>
)}
<div
style={{
width: '100%',
height: 667,
background: '#fff000',
color: '#fff',
textAlign: 'center',
lineHeight: '667px',
}}
>
内容区块
</div>
</div>
);
},
};