102 lines
3.3 KiB
Vue
102 lines
3.3 KiB
Vue
|
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'
|
|||
|
import '../../button/style/index'
|
|||
|
import '../../select/style/index'
|
|||
|
|
|||
|
const SubMenu = Menu.SubMenu
|
|||
|
const MenuItemGroup = Menu.ItemGroup
|
|||
|
|
|||
|
export default {
|
|||
|
data () {
|
|||
|
return {
|
|||
|
placement: 'right',
|
|||
|
childShow: true,
|
|||
|
width: '20vw',
|
|||
|
height: null,
|
|||
|
}
|
|||
|
},
|
|||
|
methods: {
|
|||
|
onChange (event) {
|
|||
|
const value = event.target.value
|
|||
|
this.placement = value
|
|||
|
this.width = value === 'right' || value === 'left' ? '20vw' : null
|
|||
|
this.height = value === 'right' || value === 'left' ? null : '20vh'
|
|||
|
this.childShow = false // 删除子级,删除切换时的过渡动画。。。
|
|||
|
this.$nextTick(() => {
|
|||
|
this.childShow = true
|
|||
|
})
|
|||
|
},
|
|||
|
},
|
|||
|
render () {
|
|||
|
return (
|
|||
|
<div >
|
|||
|
{this.childShow && (
|
|||
|
<Drawer placement={this.placement} width={this.width} hieght={this.height}>
|
|||
|
<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: '#000', textAlign: 'center', lineHeight: '667px',
|
|||
|
}}
|
|||
|
>
|
|||
|
选择位置:
|
|||
|
<select
|
|||
|
style={{ width: '120px', marginLeft: '20px' }}
|
|||
|
value={this.placement}
|
|||
|
onChange={this.onChange}
|
|||
|
>
|
|||
|
<option value='left'>左边 left</option>
|
|||
|
<option value='top'>上面 top</option>
|
|||
|
<option value='right'>右边 right</option>
|
|||
|
<option value='bottom'>下面 bottom</option>
|
|||
|
</select>
|
|||
|
</div>
|
|||
|
</div>
|
|||
|
)
|
|||
|
},
|
|||
|
}
|