Skip to content

Make use of docChange of QuerySnapshot to pick changes #58

@valentinalexeev

Description

@valentinalexeev

Is there an option for react-firebase to support delta change of QuerySnapshot to cherry-pick and update only the affected documents (added, modified, deleted) in the local copy?

  • react-firestore version: 1.0.1
  • node version: v8.16.0
  • npm (or yarn) version: 1.19.1

Relevant code or config

The current FirebaseCollection.handleOnSnapshotSuccess() is directly updating the state by replacing the data in case of even minor updates of the collection.

What you did:
MUI-Datatable wrapped in FirebaseCollection and data is shared between the components.

What happened:
Upon internal (from within the app) or external change of the data (another app user) the Datatable widget will re-render fully.

Problem description:
In case consumer widget is relying on state of data the component must re-render fully breaking the flow unexpectedly. In my app the FirebaseCollection feeds MUI-Datatable and change of underlying data re-renders the full table and loosing the state of the table.

Suggested solution:

  • Use docChange() and a different state management approach,
  • useReducer to delegate state management to consumer,
  • any other option?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions