| | |
| | | import {connect} from 'react-redux' |
| | | import { is, fromJS } from 'immutable' |
| | | import {Tabs, Icon, Button, ConfigProvider, message, BackTop} from 'antd' |
| | | import {modifyTabview, toggleIsiframe} from '@/store/action' |
| | | import {modifyTabview, toggleIsiframe, refreshTabView} from '@/store/action' |
| | | // import asyncComponent from '@/utils/asyncComponent' |
| | | import asyncComponent from '@/utils/asyncLoadComponent' |
| | | import NotFount from '@/components/404' |
| | |
| | | locale: (!sessionStorage.getItem('lang') || sessionStorage.getItem('lang') === 'zh-CN') ? zhCN : enUS |
| | | } |
| | | |
| | | handleTabview (e, menu) { |
| | | handleTabview = (e, menu) => { |
| | | e.stopPropagation() |
| | | // 关闭tab页,重新选择显示页 |
| | | let tabs = JSON.parse(JSON.stringify(this.state.tabviews)) |
| | |
| | | this.props.modifyTabview(tabs) |
| | | } |
| | | |
| | | changeTab (e, menu) { |
| | | refreshTabview = (e, menu) => { |
| | | e.stopPropagation() |
| | | window.GLOB.CacheMap = new Map() |
| | | |
| | | let _menu = { |
| | | MenuID: menu.MenuID, |
| | | position: 'view' |
| | | } |
| | | this.props.refreshTabView(_menu) |
| | | } |
| | | |
| | | changeTab = (e, menu) => { |
| | | e.stopPropagation() |
| | | // 窗口切换 |
| | | let tabs = JSON.parse(JSON.stringify(this.state.tabviews)) |
| | |
| | | this.props.modifyTabview(tabs) |
| | | } |
| | | |
| | | selectcomponent (view) { |
| | | selectcomponent = (view) => { |
| | | // 根据tab页中菜单信息,选择所需的组件 |
| | | if (view.type === 'Home') { |
| | | return (<Comps.Home MenuNo={view.MenuNo} MenuID={view.MenuID} MenuName={view.MenuName} key={view.MenuID}/>) |
| | |
| | | } |
| | | } |
| | | |
| | | resetWindow (view) { |
| | | resetWindow = (view) => { |
| | | // 窗口在iframe与普通页面切换时,修改左侧菜单栏样式 |
| | | if (!view) return |
| | | let _isiframe = this.props.isiframe |
| | |
| | | className="test" |
| | | tab={ |
| | | <span className="tab-control"> |
| | | {['CommonTable', 'FormTab'].includes(view.type) ? |
| | | <Icon type="redo" onClick={(e) => {this.refreshTabview(e, view)}}/> : null |
| | | } |
| | | <span className="tab-name" onClick={(e) => {this.changeTab(e, view)}}> |
| | | {view.MenuName} |
| | | </span> |
| | | {view.type !== 'Home' ? <Icon type="close" onClick={(e) => {this.handleTabview(e, view)}}/> : null} |
| | | {view.type !== 'Home' ? |
| | | <Icon type="close" onClick={(e) => {this.handleTabview(e, view)}}/> : null |
| | | } |
| | | </span> |
| | | } |
| | | key={view.MenuID} |
| | |
| | | const mapDispatchToProps = (dispatch) => { |
| | | return { |
| | | modifyTabview: (tabviews) => dispatch(modifyTabview(tabviews)), |
| | | refreshTabView: (refreshTab) => dispatch(refreshTabView(refreshTab)), |
| | | toggleIsiframe: (isiframe) => dispatch(toggleIsiframe(isiframe)) |
| | | } |
| | | } |