kaori 3 лет назад
Родитель
Сommit
8964c33a5f
1 измененных файлов с 12 добавлено и 10 удалено
  1. 12 10
      packages/app/src/pages/UnsavedAlertDialog.tsx

+ 12 - 10
packages/app/src/pages/UnsavedAlertDialog.tsx

@@ -1,8 +1,10 @@
-import React, {useCallback, useEffect} from 'react';
-import {useUnsavedWarning } from '~/stores/editor'
+import { useCallback, useEffect } from 'react';
+
 import { useRouter } from 'next/router';
 
-const unsavedAlertMsg = 'Changes you made may not be saved.'
+import { useUnsavedWarning } from '~/stores/editor';
+
+const unsavedAlertMsg = 'Changes you made may not be saved.';
 
 const UnsavedAlertDialog = (): void => {
   const router = useRouter();
@@ -13,18 +15,18 @@ const UnsavedAlertDialog = (): void => {
     showAlertDialog(unsavedAlertMsg);
     e.returnValue = '';
     return;
-  },[]);
+  }, [showAlertDialog]);
 
   /*
-  *  Route changes by Browser
-  * Example: window.location.href, F5
+  * Route changes by Browser
+  * Example: window.location.href, F5
   */
   useEffect(() => {
     window.addEventListener('beforeunload', showAlertDialogForRouteChangesByBrowser);
     return () => {
       window.removeEventListener('beforeunload', showAlertDialogForRouteChangesByBrowser);
     };
-  }, []);
+  }, [showAlertDialogForRouteChangesByBrowser]);
 
 
   /*
@@ -32,11 +34,11 @@ const UnsavedAlertDialog = (): void => {
   * https://nextjs.org/docs/api-reference/next/router
   */
   useEffect(() => {
-    router.events.on('routeChangeStart', () => showAlertDialog(unsavedAlertMsg))
+    router.events.on('routeChangeStart', () => showAlertDialog(unsavedAlertMsg));
     return () => {
-      router.events.off('routeChangeStart', () => showAlertDialog(unsavedAlertMsg))
+      router.events.off('routeChangeStart', () => showAlertDialog(unsavedAlertMsg));
     };
-  }, []);
+  }, [router.events, showAlertDialog]);
 
 
   return;