@@ -109,13 +109,20 @@ export const useList = (query?: firebase.database.Query | null): ListHook => {
109109 return useMemo ( ( ) => resArray , resArray ) ;
110110} ;
111111
112- export const useListKeys = ( query ?: firebase . database . Query | null ) : ListKeysHook => {
113- const [ value , loading , error ] = useList ( query ) ;
114- return [
115- value ? value . map ( ( snapshot ) => snapshot . key as string ) : undefined ,
116- loading ,
117- error ,
118- ] ;
112+ export const useListKeys = (
113+ query ?: firebase . database . Query | null
114+ ) : ListKeysHook => {
115+ const [ snapshots , loading , error ] = useList ( query ) ;
116+ const values = useMemo (
117+ ( ) =>
118+ snapshots
119+ ? snapshots . map ( ( snapshot ) => snapshot . key as string )
120+ : undefined ,
121+ [ snapshots ]
122+ ) ;
123+ const resArray : ListKeysHook = [ values , loading , error ] ;
124+
125+ return useMemo ( ( ) => resArray , resArray ) ;
119126} ;
120127
121128export const useListVals = < T > (
@@ -132,10 +139,10 @@ export const useListVals = <T>(
132139 ( ) =>
133140 snapshots
134141 ? snapshots . map ( ( snapshot ) =>
135- snapshotToData ( snapshot , options ? options . keyField : undefined , refField )
142+ snapshotToData ( snapshot , keyField , refField )
136143 )
137144 : undefined ,
138- [ snapshots , options && options . keyField ]
145+ [ snapshots , keyField , refField ]
139146 ) ;
140147
141148 const resArray : ListValsHook < T > = [ values , loading , error ] ;
0 commit comments