From 3ca91a731665962918a026f521c556f4745ebf35 Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期一, 16 十一月 2020 19:20:19 +0800
Subject: [PATCH] 2020-11-16

---
 src/tabviews/calendar/index.jsx |   28 +++++++++++++++++-----------
 1 files changed, 17 insertions(+), 11 deletions(-)

diff --git a/src/tabviews/calendar/index.jsx b/src/tabviews/calendar/index.jsx
index dabdafc..ee5cbdd 100644
--- a/src/tabviews/calendar/index.jsx
+++ b/src/tabviews/calendar/index.jsx
@@ -11,7 +11,7 @@
 import enUS from '@/locales/en-US/main.js'
 import Utils from '@/utils/utils.js'
 import asyncSpinComponent from '@/utils/asyncSpinComponent'
-import { refreshTabView } from '@/store/action'
+import MKEmitter from '@/utils/events.js'
 
 import MainSearch from '@/tabviews/zshare/topSearch'
 import NotFount from '@/components/404'
@@ -515,16 +515,21 @@
     })
   }
 
+  reloadMenuView = (menuId) => {
+    const { MenuID } = this.props
+
+    if (MenuID !== menuId) return
+
+    this.reloadview()
+  }
+
   UNSAFE_componentWillMount () {
     // 缁勪欢鍔犺浇鏃讹紝鑾峰彇鑿滃崟鏁版嵁
     this.loadconfig()
   }
 
   UNSAFE_componentWillReceiveProps(nextProps) {
-    if (nextProps.refreshTab && nextProps.refreshTab.MenuID === this.props.MenuID) {
-      this.reloadview()
-      this.props.refreshTabView('')
-    } else if (nextProps.param && !is(fromJS(this.props.param), fromJS(nextProps.param))) {
+    if (nextProps.param && !is(fromJS(this.props.param), fromJS(nextProps.param))) {
       let search = this.state.search.map(item => {
         if (item.type === 'text' && item.key === nextProps.param.searchkey) {
           item.value = nextProps.param.searchval
@@ -539,6 +544,10 @@
     return !is(fromJS(this.props), fromJS(nextProps)) || !is(fromJS(this.state), fromJS(nextState))
   }
 
+  componentDidMount () {
+    MKEmitter.addListener('reloadMenuView', this.reloadMenuView)
+  }
+
   /**
    * @description 缁勪欢閿�姣侊紝娓呴櫎state鏇存柊锛屾竻闄ゅ揩鎹烽敭璁剧疆
    */
@@ -546,6 +555,7 @@
     this.setState = () => {
       return
     }
+    MKEmitter.removeListener('reloadMenuView', this.reloadMenuView)
   }
 
   changeDate = (value) => {
@@ -646,18 +656,14 @@
 const mapStateToProps = (state) => {
   return {
     menuType: state.editLevel,
-    tabviews: state.tabviews,
-    refreshTab: state.refreshTab,
     permAction: state.permAction,
     permRoles: state.permRoles,
     dataManager: state.dataManager
   }
 }
 
-const mapDispatchToProps = (dispatch) => {
-  return {
-    refreshTabView: (refreshTab) => dispatch(refreshTabView(refreshTab))
-  }
+const mapDispatchToProps = () => {
+  return {}
 }
 
 export default connect(mapStateToProps, mapDispatchToProps)(NormalTable)
\ No newline at end of file

--
Gitblit v1.8.0