reset list when changing filter

This commit is contained in:
austinried 2021-08-22 12:00:22 +09:00
parent 290a62588e
commit 43d8cc7fa7
2 changed files with 11 additions and 7 deletions

View File

@ -42,11 +42,15 @@ export const useFetchPaginatedList = <T>(
}) })
}, [fetchList, pageSize]) }, [fetchList, pageSize])
const reset = useCallback(() => {
setList([])
refresh()
}, [refresh])
useActiveServerRefresh( useActiveServerRefresh(
useCallback(() => { useCallback(() => {
setList([]) reset()
refresh() }, [reset]),
}, [refresh]),
) )
const fetchNextPage = useCallback(() => { const fetchNextPage = useCallback(() => {
@ -65,5 +69,5 @@ export const useFetchPaginatedList = <T>(
}) })
}, [offset, pageSize, fetchList, list]) }, [offset, pageSize, fetchList, list])
return { list, refreshing, refresh, fetchNextPage } return { list, refreshing, refresh, reset, fetchNextPage }
} }

View File

@ -64,7 +64,7 @@ const filterOptions: OptionData[] = [
const AlbumsList = () => { const AlbumsList = () => {
const fetchAlbums = useStore(selectMusic.fetchAlbums) const fetchAlbums = useStore(selectMusic.fetchAlbums)
const { list, refreshing, refresh, fetchNextPage } = useFetchPaginatedList(fetchAlbums, 300) const { list, refreshing, refresh, reset, fetchNextPage } = useFetchPaginatedList(fetchAlbums, 300)
const filter = useStore(selectSettings.libraryAlbumFilter) const filter = useStore(selectSettings.libraryAlbumFilter)
const setFilter = useStore(selectSettings.setLibraryAlbumFilter) const setFilter = useStore(selectSettings.setLibraryAlbumFilter)
@ -74,8 +74,8 @@ const AlbumsList = () => {
const height = size + 36 const height = size + 36
useEffect(() => { useEffect(() => {
refresh() reset()
}, [refresh, filter]) }, [reset, filter])
return ( return (
<View style={styles.container}> <View style={styles.container}>