Просмотр исходного кода

revalidate when delete page from DescendantsPageList

Yuki Takei 4 лет назад
Родитель
Сommit
928d8270ba
1 измененных файлов с 7 добавлено и 1 удалено
  1. 7 1
      packages/app/src/components/DescendantsPageList.tsx

+ 7 - 1
packages/app/src/components/DescendantsPageList.tsx

@@ -9,6 +9,7 @@ import { OnDeletedFunction } from '~/interfaces/ui';
 import { useIsGuestUser, useIsSharedUser } from '~/stores/context';
 
 import { useSWRxDescendantsPageListForCurrrentPath, useSWRxPageInfoForList, useSWRxPageList } from '~/stores/page';
+import { usePageTreeTermManager } from '~/stores/page-listing';
 
 import PageList from './PageList/PageList';
 import PaginationWrapper from './PaginationWrapper';
@@ -40,6 +41,9 @@ export const DescendantsPageListSubstance = (props: SubstanceProps): JSX.Element
 
   let pagingResultWithMeta: IPagingResult<IPageWithMeta> | undefined;
 
+  // for mutation
+  const { advance: advancePt } = usePageTreeTermManager();
+
   // initial data
   if (pagingResult != null) {
     const pages = pagingResult.items;
@@ -73,10 +77,12 @@ export const DescendantsPageListSubstance = (props: SubstanceProps): JSX.Element
   const pageDeletedHandler: OnDeletedFunction = useCallback((...args) => {
     toastSuccess(args[2] ? t('deleted_pages_completely') : t('deleted_pages'));
 
+    setTimeout(() => advancePt(), 800);
+
     if (onPagesDeleted != null) {
       onPagesDeleted(...args);
     }
-  }, [onPagesDeleted, t]);
+  }, [advancePt, onPagesDeleted, t]);
 
   function setPageNumber(selectedPageNumber) {
     setActivePage(selectedPageNumber);