king
2019-10-12 c7f79abded9ad2e29f297da4a04a641b96b61c5e
src/components/header/index.jsx
@@ -5,11 +5,12 @@
import { is, fromJS } from 'immutable'
import {Dropdown, Menu, Icon, Modal, message, Form } from 'antd'
import md5 from 'md5'
import {toggleCollapse, modifyMainMenu, resetState} from '@/store/action'
import {toggleCollapse, modifyMainMenu, resetState, resetDebug} from '@/store/action'
import Resetpwd from '@/components/resetpwd'
import Api from '@/api'
import zhCN from '@/locales/zh-CN/header.js'
import enUS from '@/locales/en-US/header.js'
import Utils from '@/utils/utils.js'
import logourl from '../../assets/img/mlogo.png'
import avatar from '../../assets/img/avatar.jpg'
import './index.scss'
@@ -28,7 +29,8 @@
    menulist: null,
    visible: false,
    dict: (!localStorage.getItem('lang') || localStorage.getItem('lang') === 'zh-CN') ? zhCN : enUS,
    confirmLoading: false
    confirmLoading: false,
    userName: localStorage.getItem('username')
  }
  handleCollapse = () => {
@@ -118,14 +120,20 @@
    // 获取主菜单
    let result = await Api.getMainMenuData()
    if (result.status) {
      this.setState({
        menulist: result.data
      })
      let _avatar = Utils.getrealurl(result.HeadIcon) // 头像
      if (_avatar) {
        avatar = _avatar
      }
      if (result.debug === 'true') { // 是否为debug模式,即可复制菜单参数
        this.props.resetDebug()
      }
      let param = sessionStorage.getItem('view_param') // 是否为打开新页面
      if (param) {
        // 通过url中menuid筛选出选中的主菜单
        let id = param.split('&')[0]
        let _menu = result.data.filter(item => item.MenuID === id)[0]
        let menuId = param.split('&')[0]
        let _menu = result.data.filter(item => item.MenuID === menuId)[0]
        if (!_menu) {
          sessionStorage.removeItem('view_param')
        }
@@ -133,6 +141,10 @@
      } else {
        this.props.modifyMainMenu(result.data[0])
      }
      this.setState({
        menulist: result.data
      })
    }
  }
  
@@ -162,7 +174,7 @@
        {this.state.menulist && <ul className="header-menu">{
          this.state.menulist.map(item => {
            return (
              <li key={item.id} onClick={() => {this.changeMenu(item)}} className={this.props.selectmenu.id === item.id ? 'active' : ''}>
              <li key={item.MenuID} onClick={() => {this.changeMenu(item)}} className={this.props.selectmenu.MenuID === item.MenuID ? 'active' : ''}>
                {item.MenuName}
              </li>
            )
@@ -172,7 +184,7 @@
          <div>
            <img src={avatar} alt=""/>
            <span>
              admin <Icon type="down" />
              {this.state.userName} <Icon type="down" />
            </span>
          </div>
        </Dropdown>
@@ -203,7 +215,8 @@
  return {
    toggleCollapse: (collapse) => dispatch(toggleCollapse(collapse)),
    modifyMainMenu: (selectmenu) => dispatch(modifyMainMenu(selectmenu)),
    resetState: () => dispatch(resetState())
    resetState: () => dispatch(resetState()),
    resetDebug: () => dispatch(resetDebug())
  }
}