From 2d1ecb2628680c31ed075261b40d6f16ca6363dd Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期三, 11 三月 2020 13:39:29 +0800 Subject: [PATCH] 2020-03-11 --- src/components/tabview/index.jsx | 29 +++++++++++++++++++++++------ 1 files changed, 23 insertions(+), 6 deletions(-) diff --git a/src/components/tabview/index.jsx b/src/components/tabview/index.jsx index 8dbe85e..a15b7b9 100644 --- a/src/components/tabview/index.jsx +++ b/src/components/tabview/index.jsx @@ -3,7 +3,7 @@ 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' @@ -38,7 +38,7 @@ 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)) @@ -53,7 +53,18 @@ 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)) @@ -74,7 +85,7 @@ 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}/>) @@ -97,7 +108,7 @@ } } - resetWindow (view) { + resetWindow = (view) => { // 绐楀彛鍦╥frame涓庢櫘閫氶〉闈㈠垏鎹㈡椂锛屼慨鏀瑰乏渚ц彍鍗曟爮鏍峰紡 if (!view) return let _isiframe = this.props.isiframe @@ -210,10 +221,15 @@ 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} @@ -258,6 +274,7 @@ const mapDispatchToProps = (dispatch) => { return { modifyTabview: (tabviews) => dispatch(modifyTabview(tabviews)), + refreshTabView: (refreshTab) => dispatch(refreshTabView(refreshTab)), toggleIsiframe: (isiframe) => dispatch(toggleIsiframe(isiframe)) } } -- Gitblit v1.8.0