From bde2916433c7830e2879e6524e32b9f6c8bd0bab Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期日, 02 一月 2022 16:31:32 +0800
Subject: [PATCH] 2022-01-02

---
 src/tabviews/zshare/actionList/exceloutbutton/index.jsx |   24 +++++++++++++++++++-----
 1 files changed, 19 insertions(+), 5 deletions(-)

diff --git a/src/tabviews/zshare/actionList/exceloutbutton/index.jsx b/src/tabviews/zshare/actionList/exceloutbutton/index.jsx
index b8be25b..66b4f90 100644
--- a/src/tabviews/zshare/actionList/exceloutbutton/index.jsx
+++ b/src/tabviews/zshare/actionList/exceloutbutton/index.jsx
@@ -24,6 +24,7 @@
     btn: PropTypes.object,            // 鎸夐挳
     setting: PropTypes.any,           // 椤甸潰閫氱敤璁剧疆
     updateStatus: PropTypes.func,     // 鎸夐挳鐘舵�佹洿鏂�
+    disabled: PropTypes.any,          // 琛屾寜閽鐢�
   }
 
   state = {
@@ -31,11 +32,12 @@
     excelName: '',  // 鏂囦欢鍚�
     search: '',     // 鎼滅储鏉′欢
     loading: false, // 瀵煎嚭涓�
-    hidden: false
+    hidden: false,
+    disabled: false
   }
 
   UNSAFE_componentWillMount () {
-    const { btn, BData } = this.props
+    const { btn, BData, disabled } = this.props
 
     if (btn.control === 'parent') {
       if (!BData || !BData.hasOwnProperty(btn.controlField)) {
@@ -48,6 +50,10 @@
           this.setState({hidden: false})
         }
       }
+    }
+
+    if (disabled) {
+      this.setState({disabled: true})
     }
   }
 
@@ -74,6 +80,12 @@
           this.setState({hidden: false})
         }
       }
+    }
+
+    if (nextProps.disabled) {
+      this.setState({disabled: true})
+    } else {
+      this.setState({disabled: false})
     }
   }
 
@@ -106,9 +118,9 @@
    */
   actionTrigger = (triggerId) => {
     const { setting, Tab, BID, btn } = this.props
-    const { loading } = this.state
+    const { loading, disabled } = this.state
 
-    if ((triggerId && btn.uuid !== triggerId) || loading) return
+    if ((triggerId && btn.uuid !== triggerId) || loading || disabled) return
 
     if (((Tab && Tab.supMenu) || setting.supModule) && !BID) {
       notification.warning({
@@ -910,7 +922,7 @@
 
   render() {
     const { btn, show } = this.props
-    const { loading, hidden } = this.state
+    const { loading, hidden, disabled } = this.state
 
     if (hidden) return null
 
@@ -919,6 +931,7 @@
         <Button
           className={'mk-btn mk-' + btn.class}
           icon={btn.icon}
+          disabled={disabled}
           onClick={(e) => {e.stopPropagation(); this.actionTrigger()}}
           loading={loading}
         >{btn.label}</Button>
@@ -945,6 +958,7 @@
           type="link"
           title={show === 'icon' ? btn.label : ''}
           loading={loading}
+          disabled={disabled}
           style={btn.style}
           icon={icon}
           onClick={(e) => {e.stopPropagation(); this.actionTrigger()}}

--
Gitblit v1.8.0