فهرست منبع

Add delay for resize

afc163 8 سال پیش
والد
کامیت
2fc0cb9fab
1فایلهای تغییر یافته به همراه8 افزوده شده و 3 حذف شده
  1. 8 3
      src/layouts/BasicLayout.js

+ 8 - 3
src/layouts/BasicLayout.js

@@ -44,6 +44,9 @@ class BasicLayout extends React.PureComponent {
       type: 'user/fetchCurrent',
       type: 'user/fetchCurrent',
     });
     });
   }
   }
+  componentWillUnmount() {
+    clearTimeout(this.resizeTimeout);
+  }
   onCollapse = (collapsed) => {
   onCollapse = (collapsed) => {
     this.props.dispatch({
     this.props.dispatch({
       type: 'global/changeLayoutCollapsed',
       type: 'global/changeLayoutCollapsed',
@@ -170,9 +173,11 @@ class BasicLayout extends React.PureComponent {
       type: 'global/changeLayoutCollapsed',
       type: 'global/changeLayoutCollapsed',
       payload: !collapsed,
       payload: !collapsed,
     });
     });
-    const event = document.createEvent('HTMLEvents');
-    event.initEvent('resize', true, false);
-    window.dispatchEvent(event);
+    this.resizeTimeout = setTimeout(() => {
+      const event = document.createEvent('HTMLEvents');
+      event.initEvent('resize', true, false);
+      window.dispatchEvent(event);
+    }, 600);
   }
   }
   handleNoticeClear = (type) => {
   handleNoticeClear = (type) => {
     message.success(`清空了${type}`);
     message.success(`清空了${type}`);