king
2020-08-31 b3547d1c531e479021219fda5df153a11b9b52a3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
import React, {Component} from 'react'
import PropTypes from 'prop-types'
import { is, fromJS } from 'immutable'
import { connect } from 'react-redux'
import { withRouter } from 'react-router-dom'
// import { Icon, Modal } from 'antd'
 
import { logout } from '@/store/action'
import zhCN from '@/locales/zh-CN/mob.js'
import enUS from '@/locales/en-US/mob.js'
import avatar from '@/assets/img/avatar.jpg'
import './index.scss'
 
// const { confirm } = Modal
 
class MobHeader extends Component {
  static propTpyes = {
    saveIng: PropTypes.any,
    triggerSave: PropTypes.func,
    closeView: PropTypes.func
  }
 
  state = {
    dict: localStorage.getItem('lang') !== 'en-US' ? zhCN : enUS,
    logourl: window.GLOB.mainlogo,
    avatar: sessionStorage.getItem('CloudAvatar') || avatar,
    userName: sessionStorage.getItem('CloudUserName')
  }
 
  // logout = () => {
  //   // 退出登录
  //   let _this = this
  //   confirm({
  //     title: this.state.dict['mob.logout.hint'],
  //     content: '',
  //     onOk() {
  //       sessionStorage.clear()
  //       _this.props.logout()
  //       _this.props.history.replace('/login')
  //     },
  //     onCancel() {}
  //   })
  // }
 
  shouldComponentUpdate (nextProps, nextState) {
    return !is(fromJS(this.props), fromJS(nextProps)) || !is(fromJS(this.state), fromJS(nextState))
  }
 
  // componentDidMount () {
  //   this.getImage()
  // }
 
  // getImage = () => {
  //   const { logourl } = this.state
  //   const _this = this
 
  //   let xhr = new XMLHttpRequest()
  //   xhr.open('get', logourl, true)
  //   xhr.responseType = 'blob'
  //   xhr.onload = function () {
  //     if (this.status === 200) {
  //       // document.getElementById(imgId).src =  URL.createObjectURL(this.response)
  //       _this.setState({
  //         logourl: URL.createObjectURL(this.response)
  //       })
  //     }
  //   }
  //   xhr.send(null)
  // }
 
  render () {
 
    return (
      <header className="menu-header-container">
        <div className="header-logo"><img src={this.state.logourl} alt=""/></div>
        {/* <Dropdown className="header-setting" overlay={
          <Menu>
            <Menu.Item key="2" onClick={this.logout}>{this.state.dict['mob.logout']}</Menu.Item>
          </Menu>
        }> */}
          <div className="header-setting">
            <img src={this.state.avatar} alt=""/>
            <span>
              <span className="username">{this.state.userName}</span>{/* <Icon type="down" /> */}
            </span>
          </div>
        {/* </Dropdown> */}
      </header>
    )
  }
}
 
const mapStateToProps = () => {
  return {}
}
 
const mapDispatchToProps = (dispatch) => {
  return {
    logout: () => dispatch(logout())
  }
}
 
export default withRouter(connect(mapStateToProps, mapDispatchToProps)(MobHeader))