useDatabaseListData only fetch data once
useDatabaseListData only fetches data once and does not listen to updates I am using react 18 and firebase 9
after hours of debugging and when I switch to useDatabaseObjectData, data is updated properly.
Did you fix this useDatabaseListData ? I'm also getting this bug. I need to reload my browser in order to fetch the right data. Even the status is success, it doesn't show any data unless I reload the browser. Should have mentioned it in the docs.
When running in Jest/react-testing-framework, useDatabaseListData stops updating after a simple call to remove between tests clears the part of the database at the point where useDatabaseListData is referenced.
I was hit by this bug too. I ended up re-implementing useDatabaseListData on top of Nano Stores, which resolved the issue for me. The code is here: https://github.com/wonderfulsoftware/ansr/blob/main/web/src/nanofire.ts (Not a complete implementation — it only supports a subset of the API that I actually use.)
it's exactly the same situation like stated here https://github.com/FirebaseExtended/reactfire/discussions/497
using useDatabaseObjectData for now is a nice catch, thanks @muhammadnasr
Unfortunately the useDatabaseObjectData workaround doesn't seem to support filtering with query() as shown here:
https://github.com/FirebaseExtended/reactfire/blob/9429194d9dfed9a4b37129661d230ebcd0071e89/docs/use.md#show-a-list-of-data
For example, when I subscribe to query(myRef, limitToFirst(1)) with useDatabaseObjectData I receive all children instead of just the first. I'm not too surprised because that hook doesn't allow Query types for the ref argument.