ソースを参照

Merge branch 'feat/g2g-nextjs' of https://github.com/hakumizuki/growi into feat/g2g-nextjs

Taichi Masuyama 3 年 前
コミット
4dbefac77f
1 ファイル変更13 行追加1 行削除
  1. 13 1
      packages/app/src/components/Admin/G2GDataTransfer.tsx

+ 13 - 1
packages/app/src/components/Admin/G2GDataTransfer.tsx

@@ -74,6 +74,16 @@ const G2GDataTransfer = (): JSX.Element => {
     }
   }, [socket, t]);
 
+  const cleanUpWebsocketEventHandler = useCallback(() => {
+    if (socket != null) {
+      socket.off('admin:onStartTransferMongoData');
+
+      socket.off('admin:onStartTransferAttachments');
+
+      socket.off('admin:onFinishTransfer');
+    }
+  }, [socket]);
+
   const { transferKey, generateTransferKeyWithThrottle } = useGenerateTransferKeyWithThrottle();
 
   const onClickHandler = useCallback(() => {
@@ -99,7 +109,9 @@ const G2GDataTransfer = (): JSX.Element => {
     setCollectionsAndSelectedCollections();
 
     setupWebsocketEventHandler();
-  }, [setCollectionsAndSelectedCollections, setupWebsocketEventHandler]);
+
+    return cleanUpWebsocketEventHandler();
+  }, [setCollectionsAndSelectedCollections, setupWebsocketEventHandler, cleanUpWebsocketEventHandler]);
 
   return (
     <div data-testid="admin-export-archive-data">