From 4a345699a830889c0f5c037bc2f178a0ebb72ac8 Mon Sep 17 00:00:00 2001 From: Lei Nelissen Date: Wed, 12 May 2021 22:13:44 +0200 Subject: [PATCH] Fix search box (fix #47) --- src/screens/Music/stacks/Search.tsx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/screens/Music/stacks/Search.tsx b/src/screens/Music/stacks/Search.tsx index a4eadbf..6875b15 100644 --- a/src/screens/Music/stacks/Search.tsx +++ b/src/screens/Music/stacks/Search.tsx @@ -78,6 +78,7 @@ export default function Search() { const defaultStyles = useDefaultStyles(); // Prepare state + const [fuseIsReady, setFuseReady] = useState(false); const [searchTerm, setSearchTerm] = useState(''); const albums = useTypedSelector(state => state.music.albums.entities); const [fuseResults, setFuseResults] = useState([]); @@ -100,7 +101,8 @@ export default function Search() { */ useEffect(() => { fuse.current = new Fuse(Object.values(albums) as Album[], fuseOptions); - }, [albums]); + setFuseReady(true); + }, [albums, setFuseReady]); /** * This function retrieves search results from Jellyfin. It is a seperate @@ -205,7 +207,7 @@ export default function Search() { // GUARD: We cannot search for stuff unless Fuse is loaded with results. // Therefore we delay rendering to when we are certain it's there. - if (!fuse.current) { + if (!fuseIsReady) { return null; }