Skip to content

Commit 34ca031

Browse files
authored
Update useList.ts
1 parent 1bd4391 commit 34ca031

File tree

1 file changed

+16
-9
lines changed

1 file changed

+16
-9
lines changed

database/useList.ts

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -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

121128
export 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

Comments
 (0)