@@ -13,100 +13,82 @@ import 'antd/lib/style';
13
13
14
14
import '../../assets/index.less' ;
15
15
import './assets/index.less' ;
16
+ import motionProps from './motion' ;
16
17
17
18
const { SubMenu } = Menu ;
18
19
const MenuItemGroup = Menu . ItemGroup ;
19
20
20
- class DrawerTester extends React . Component {
21
- private container : HTMLDivElement ;
21
+ export default ( ) => {
22
+ const containerRef = React . useRef < HTMLDivElement > ( ) ;
23
+ const [ open , setOpen ] = React . useState ( false ) ;
22
24
23
- public getContainer = ( ) => {
24
- return this . container ;
25
- } ;
26
- public saveContainer = ( container : HTMLDivElement ) => {
27
- this . container = container ;
28
- } ;
29
-
30
- public render ( ) {
31
- return (
32
- < div >
33
- < div
34
- ref = { this . saveContainer }
35
- id = "container"
36
- style = { {
37
- height : 300 ,
38
- background : 'rgba(0,0,0,0.05)' ,
39
- overflow : 'auto' ,
40
- } }
25
+ return (
26
+ < div >
27
+ < div ref = { containerRef } id = "container" >
28
+ < button onClick = { ( ) => setOpen ( true ) } > Open</ button >
29
+ </ div >
30
+ < Drawer
31
+ width = "20vw"
32
+ getContainer = { ( ) => containerRef . current }
33
+ open = { open }
34
+ onClose = { ( ) => setOpen ( false ) }
35
+ { ...motionProps }
36
+ >
37
+ < Menu
38
+ defaultSelectedKeys = { [ '1' ] }
39
+ defaultOpenKeys = { [ 'sub1' ] }
40
+ mode = "inline"
41
41
>
42
- < div
43
- style = { {
44
- display : 'inline-block' ,
45
- height : 1000 ,
46
- boxShadow : `0 0 1px red` ,
47
- } }
42
+ < SubMenu
43
+ key = "sub1"
44
+ title = {
45
+ < span >
46
+ < MailOutlined />
47
+ < span > Navigation One</ span >
48
+ </ span >
49
+ }
48
50
>
49
- Hello World
50
- </ div >
51
- </ div >
52
- < Drawer width = "20vw" getContainer = { this . getContainer } open >
53
- < Menu
54
- defaultSelectedKeys = { [ '1' ] }
55
- defaultOpenKeys = { [ 'sub1' ] }
56
- mode = "inline"
51
+ < MenuItemGroup key = "g1" title = "Item 1" >
52
+ < Menu . Item key = "1" > Option 1</ Menu . Item >
53
+ < Menu . Item key = "2" > Option 2</ Menu . Item >
54
+ </ MenuItemGroup >
55
+ < MenuItemGroup key = "g2" title = "Item 2" >
56
+ < Menu . Item key = "3" > Option 3</ Menu . Item >
57
+ < Menu . Item key = "4" > Option 4</ Menu . Item >
58
+ </ MenuItemGroup >
59
+ </ SubMenu >
60
+ < SubMenu
61
+ key = "sub2"
62
+ title = {
63
+ < span >
64
+ < AppstoreOutlined />
65
+ < span > Navigation Two</ span >
66
+ </ span >
67
+ }
57
68
>
58
- < SubMenu
59
- key = "sub1"
60
- title = {
61
- < span >
62
- < MailOutlined />
63
- < span > Navigation One</ span >
64
- </ span >
65
- }
66
- >
67
- < MenuItemGroup key = "g1" title = "Item 1" >
68
- < Menu . Item key = "1" > Option 1</ Menu . Item >
69
- < Menu . Item key = "2" > Option 2</ Menu . Item >
70
- </ MenuItemGroup >
71
- < MenuItemGroup key = "g2" title = "Item 2" >
72
- < Menu . Item key = "3" > Option 3</ Menu . Item >
73
- < Menu . Item key = "4" > Option 4</ Menu . Item >
74
- </ MenuItemGroup >
75
- </ SubMenu >
76
- < SubMenu
77
- key = "sub2"
78
- title = {
79
- < span >
80
- < AppstoreOutlined />
81
- < span > Navigation Two</ span >
82
- </ span >
83
- }
84
- >
85
- < Menu . Item key = "5" > Option 5</ Menu . Item >
86
- < Menu . Item key = "6" > Option 6</ Menu . Item >
87
- < SubMenu key = "sub3" title = "Submenu" >
88
- < Menu . Item key = "7" > Option 7</ Menu . Item >
89
- < Menu . Item key = "8" > Option 8</ Menu . Item >
90
- </ SubMenu >
69
+ < Menu . Item key = "5" > Option 5</ Menu . Item >
70
+ < Menu . Item key = "6" > Option 6</ Menu . Item >
71
+ < SubMenu key = "sub3" title = "Submenu" >
72
+ < Menu . Item key = "7" > Option 7</ Menu . Item >
73
+ < Menu . Item key = "8" > Option 8</ Menu . Item >
91
74
</ SubMenu >
92
- < SubMenu
93
- key = "sub4"
94
- title = {
95
- < span >
96
- < SettingOutlined />
97
- < span > Navigation Three</ span >
98
- </ span >
99
- }
100
- >
101
- < Menu . Item key = "9" > Option 9</ Menu . Item >
102
- < Menu . Item key = "10" > Option 10</ Menu . Item >
103
- < Menu . Item key = "11" > Option 11</ Menu . Item >
104
- < Menu . Item key = "12" > Option 12</ Menu . Item >
105
- </ SubMenu >
106
- </ Menu >
107
- </ Drawer >
108
- </ div >
109
- ) ;
110
- }
111
- }
112
- export default DrawerTester ;
75
+ </ SubMenu >
76
+ < SubMenu
77
+ key = "sub4"
78
+ title = {
79
+ < span >
80
+ < SettingOutlined />
81
+ < span > Navigation Three</ span >
82
+ </ span >
83
+ }
84
+ >
85
+ < Menu . Item key = "9" > Option 9</ Menu . Item >
86
+ < Menu . Item key = "10" > Option 10</ Menu . Item >
87
+ < Menu . Item key = "11" > Option 11</ Menu . Item >
88
+ < Menu . Item key = "12" > Option 12</ Menu . Item >
89
+ </ SubMenu >
90
+ </ Menu >
91
+ </ Drawer >
92
+ </ div >
93
+ ) ;
94
+ } ;
0 commit comments