From 26d0fa42ea8c63a87e8ef93d0915f75f46fb1f9c Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期四, 24 三月 2022 11:09:53 +0800
Subject: [PATCH] 2022-03-24

---
 src/components/breadview/index.jsx |   47 ++++++++++++++++++++++-------------------------
 1 files changed, 22 insertions(+), 25 deletions(-)

diff --git a/src/components/breadview/index.jsx b/src/components/breadview/index.jsx
index 5c3a5a1..9f1a97d 100644
--- a/src/components/breadview/index.jsx
+++ b/src/components/breadview/index.jsx
@@ -1,15 +1,13 @@
 import React, {Component} from 'react'
 import {connect} from 'react-redux'
-import { is, fromJS } from 'immutable'
-import { BackTop, Breadcrumb, Icon, notification} from 'antd'
+import { BackTop, Breadcrumb, notification} from 'antd'
+import { HomeOutlined, RightOutlined, RedoOutlined } from '@ant-design/icons'
 import moment from 'moment'
 import 'moment/locale/zh-cn'
 
 import asyncComponent from '@/utils/asyncLoadComponent'
 import NotFount from '@/components/404'
 import options from '@/store/options.js'
-import mzhCN from '@/locales/zh-CN/main.js'
-import menUS from '@/locales/en-US/main.js'
 import MKEmitter from '@/utils/events.js'
 import { initActionPermission } from '@/store/action'
 import Api from '@/api'
@@ -35,7 +33,6 @@
 class BreadView extends Component {
   state = {
     tabview: null, // 鏍囩
-    dict: sessionStorage.getItem('lang') !== 'en-US' ? mzhCN : menUS,
     hasNavBar: window.GLOB.navBar === 'linkage_navigation'
   }
 
@@ -124,7 +121,6 @@
     let home = {
       MenuID: 'home_page_id',
       MenuName: '棣栭〉',
-      selected: true,
       type: 'Home'
     }
     this.setState({tabview: home})
@@ -134,24 +130,26 @@
     let home = {
       MenuID: 'home_page_id',
       MenuName: '棣栭〉',
-      selected: true,
       type: 'Home'
     }
     this.setState({tabview: home})
   }
 
-  UNSAFE_componentWillReceiveProps (nextProps) {
-    if (nextProps.tabviews && !is(fromJS(this.state.tabviews), fromJS(nextProps.tabviews))) {
-      // 淇濆瓨淇敼鏍囩闆�
-      this.setState({
-        tabview: nextProps.tabviews[nextProps.tabviews.length - 1]
-      })
+  modifyTabs = (tab, type) => {
+    if (!tab || type !== 'replace') return
 
-      let node = document.getElementById('root').parentNode.parentNode
-      if (node) {
-        node.scrollTop = 0
-      }
+    this.setState({
+      tabview: tab,
+    })
+
+    let node = document.getElementById('root').parentNode.parentNode
+    if (node) {
+      node.scrollTop = 0
     }
+  }
+
+  componentDidMount () {
+    MKEmitter.addListener('modifyTabs', this.modifyTabs)
   }
 
   /**
@@ -161,6 +159,7 @@
     this.setState = () => {
       return
     }
+    MKEmitter.removeListener('modifyTabs', this.modifyTabs)
   }
 
   render () {
@@ -170,17 +169,17 @@
       <section id="mk-breadview-wrap" className="mk-breadview-wrap">
         {hasNavBar && tabview ? <Breadcrumb separator="">
           <Breadcrumb.Item>
-            <Icon type="home" onClick={this.gotoHome} />
+            <HomeOutlined onClick={this.gotoHome} />
           </Breadcrumb.Item>
           {tabview.ParentNames && tabview.ParentNames[0] ?
             <Breadcrumb.Item>{tabview.ParentNames[0]}</Breadcrumb.Item> : null}
           {tabview.ParentNames && tabview.ParentNames[0] ?
-              <Breadcrumb.Separator children={<Icon type="right" />} /> : null}
+              <Breadcrumb.Separator children={<RightOutlined />} /> : null}
           {tabview.ParentNames && tabview.ParentNames[1] ?
             <Breadcrumb.Item>{tabview.ParentNames[1]}</Breadcrumb.Item> : null}
           {tabview.ParentNames && tabview.ParentNames[1] ?
-              <Breadcrumb.Separator children={<Icon type="right" />} /> : null}
-          <Breadcrumb.Item><Icon type="redo" onClick={this.refreshTabview}/>{tabview.MenuName}</Breadcrumb.Item>
+              <Breadcrumb.Separator children={<RightOutlined />} /> : null}
+          <Breadcrumb.Item><RedoOutlined onClick={this.refreshTabview}/>{tabview.MenuName}</Breadcrumb.Item>
         </Breadcrumb> : null}
         {tabview ? this.selectcomponent(tabview) : null}
         <BackTop>
@@ -195,10 +194,8 @@
   }
 }
 
-const mapStateToProps = (state) => {
-  return {
-    tabviews: state.tabviews
-  }
+const mapStateToProps = () => {
+  return {}
 }
 
 const mapDispatchToProps = (dispatch) => {

--
Gitblit v1.8.0