@@ -11,79 +11,79 @@ import { resizeGoogleAvatar } from '../../libs/utils';
11
11
import { auth2 } from '../../libs/googleAuth2' ;
12
12
13
13
interface UserMenuProps extends RouteComponentProps < { } > {
14
- user : User ;
15
- logout ( ) : void ;
14
+ user : User ;
15
+ logout ( ) : void ;
16
16
}
17
17
18
18
class UserMenu extends React . Component < UserMenuProps > {
19
- logout = ( ) => {
20
- // Perform AJAX request here
21
- localStorage . authToken = '' ;
19
+ logout = ( ) => {
20
+ // Perform AJAX request here
21
+ localStorage . authToken = '' ;
22
22
23
- auth2
24
- . then ( api => api . getAuthInstance ( ) . signOut ( ) )
25
- . catch ( ( ) => 0 ) // Do nothing
26
- . then ( this . props . logout ) ; // Always
27
- } ;
23
+ auth2
24
+ . then ( api => api . getAuthInstance ( ) . signOut ( ) )
25
+ . catch ( ( ) => 0 ) // Do nothing
26
+ . then ( this . props . logout ) ; // Always
27
+ } ;
28
28
29
- render ( ) {
30
- const { user } = this . props ;
29
+ render ( ) {
30
+ const { user } = this . props ;
31
31
32
- if ( user === null ) {
33
- return (
34
- < Link to = { { pathname : '/login' , state : { from : location . pathname } } } >
35
- < Button type = "dashed" className = "login-btn" >
36
- 登录
32
+ if ( user === null ) {
33
+ return (
34
+ < Link to = { { pathname : '/login' , state : { from : location . pathname } } } >
35
+ < Button type = "dashed" className = "login-btn" >
36
+ 登录
37
37
</ Button >
38
- </ Link >
39
- ) ;
40
- }
41
-
42
- return (
43
- < Dropdown
44
- trigger = { [ 'click' ] }
45
- placement = "bottomRight"
46
- overlay = {
47
- < Menu >
48
- < Menu . Item > Signed in as { user . name } </ Menu . Item >
49
- < Menu . Divider />
50
- < Menu . Item >
51
- < Link to = { '/user/' + user . id } > 个人主页</ Link >
52
- </ Menu . Item >
53
- < Menu . Item >
54
- < a onClick = { this . logout } > 注销</ a >
55
- </ Menu . Item >
56
- </ Menu >
38
+ </ Link >
39
+ ) ;
57
40
}
58
- >
59
- { user . avatar ? (
60
- < Avatar
61
- className = "user-avatar"
62
- src = { resizeGoogleAvatar ( user . avatar , 32 ) }
63
- />
64
- ) : (
65
- < Avatar className = "user-avatar" icon = "user" />
66
- ) }
67
- </ Dropdown >
68
- ) ;
69
- }
41
+
42
+ return (
43
+ < Dropdown
44
+ trigger = { [ 'click' ] }
45
+ placement = "bottomRight"
46
+ overlay = {
47
+ < Menu >
48
+ < Menu . Item > Signed in as { user . name } </ Menu . Item >
49
+ < Menu . Divider />
50
+ < Menu . Item >
51
+ < Link to = { '/user/' + user . id } > 个人主页</ Link >
52
+ </ Menu . Item >
53
+ < Menu . Item >
54
+ < a onClick = { this . logout } > 注销</ a >
55
+ </ Menu . Item >
56
+ </ Menu >
57
+ }
58
+ >
59
+ { user . avatar ? (
60
+ < Avatar
61
+ className = "user-avatar"
62
+ src = { resizeGoogleAvatar ( user . avatar , 32 ) }
63
+ />
64
+ ) : (
65
+ < Avatar className = "user-avatar" icon = "user" />
66
+ ) }
67
+ </ Dropdown >
68
+ ) ;
69
+ }
70
70
}
71
71
72
72
const mapStateToProps = ( state : State ) => ( {
73
- user : state . auth . user
73
+ user : state . auth . user
74
74
} ) ;
75
75
76
76
const mapDispatchToProps = ( dispatch : Dispatch < State > ) => ( {
77
- logout ( ) {
78
- dispatch ( {
79
- type : AUTH_RESET
80
- } ) ;
81
- }
77
+ logout ( ) {
78
+ dispatch ( {
79
+ type : AUTH_RESET
80
+ } ) ;
81
+ }
82
82
} ) ;
83
83
84
84
export default withRouter (
85
- connect (
86
- mapStateToProps ,
87
- mapDispatchToProps
88
- ) ( UserMenu )
85
+ connect (
86
+ mapStateToProps ,
87
+ mapDispatchToProps
88
+ ) ( UserMenu )
89
89
) ;
0 commit comments