reiji-h 2 лет назад
Родитель
Сommit
661f6add7e
1 измененных файлов с 5 добавлено и 9 удалено
  1. 5 9
      apps/app/src/components/SearchPage/SearchPageBase.tsx

+ 5 - 9
apps/app/src/components/SearchPage/SearchPageBase.tsx

@@ -68,9 +68,7 @@ const SearchPageBaseSubstance: ForwardRefRenderFunction<ISelectableAll & IReturn
   const [selectedPageIdsByCheckboxes] = useState<Set<string>>(new Set());
   const [selectedPageIdsByCheckboxes] = useState<Set<string>>(new Set());
   // const [allPageIds] = useState<Set<string>>(new Set());
   // const [allPageIds] = useState<Set<string>>(new Set());
 
 
-  // useRef is used to avoid unnecessary selectedPageWithMeta changes.
   const [selectedPageWithMeta, setSelectedPageWithMeta] = useState<IPageWithSearchMeta | undefined>();
   const [selectedPageWithMeta, setSelectedPageWithMeta] = useState<IPageWithSearchMeta | undefined>();
-  const selectedPageWithMetaRef = useRef(selectedPageWithMeta);
 
 
   // publish selectAll()
   // publish selectAll()
   useImperativeHandle(ref, () => ({
   useImperativeHandle(ref, () => ({
@@ -116,15 +114,13 @@ const SearchPageBaseSubstance: ForwardRefRenderFunction<ISelectableAll & IReturn
 
 
   // select first item on load
   // select first item on load
   useEffect(() => {
   useEffect(() => {
-    if ((pages == null || pages?.length === 0) && selectedPageWithMetaRef.current !== undefined) {
+    if ((pages == null || pages.length === 0)) {
       setSelectedPageWithMeta(undefined);
       setSelectedPageWithMeta(undefined);
-      selectedPageWithMetaRef.current = undefined;
     }
     }
-    else if ((pages != null && pages.length > 0) && selectedPageWithMetaRef.current !== pages[0]) {
+    else if ((pages != null && pages.length > 0)) {
       setSelectedPageWithMeta(pages[0]);
       setSelectedPageWithMeta(pages[0]);
-      selectedPageWithMetaRef.current = pages[0];
     }
     }
-  }, [pages, setSelectedPageWithMeta, selectedPageWithMetaRef]);
+  }, [pages, setSelectedPageWithMeta]);
 
 
   // reset selectedPageIdsByCheckboxes
   // reset selectedPageIdsByCheckboxes
   useEffect(() => {
   useEffect(() => {
@@ -202,7 +198,7 @@ const SearchPageBaseSubstance: ForwardRefRenderFunction<ISelectableAll & IReturn
                       pages={pages}
                       pages={pages}
                       selectedPageId={selectedPageWithMeta?.data._id}
                       selectedPageId={selectedPageWithMeta?.data._id}
                       forceHideMenuItems={forceHideMenuItems}
                       forceHideMenuItems={forceHideMenuItems}
-                      onPageSelected={page => (selectedPageWithMeta !== page ? setSelectedPageWithMeta(page) : false) }
+                      onPageSelected={page => (setSelectedPageWithMeta(page)) }
                       onCheckboxChanged={checkboxChangedHandler}
                       onCheckboxChanged={checkboxChangedHandler}
                     />
                     />
                   </div>
                   </div>
@@ -218,7 +214,7 @@ const SearchPageBaseSubstance: ForwardRefRenderFunction<ISelectableAll & IReturn
         </div>
         </div>
 
 
         <div className="mw-0 flex-grow-1 flex-basis-0 d-none d-lg-block search-result-content">
         <div className="mw-0 flex-grow-1 flex-basis-0 d-none d-lg-block search-result-content">
-          { selectedPageWithMeta != null && (
+          {pages != null && selectedPageWithMeta != null && (
             <SearchResultContent
             <SearchResultContent
               pageWithMeta={selectedPageWithMeta}
               pageWithMeta={selectedPageWithMeta}
               highlightKeywords={highlightKeywords}
               highlightKeywords={highlightKeywords}