Sharing ViewModels between multiple fragments makes it harder to reason about how components interact together.
By dedicating a single ViewModel to each Fragment, each screen computes and retains its own state.
State shared between multiple screens should be shared from the data layer.
Sharing ViewModels between multiple fragments makes it harder to reason about how components interact together. By dedicating a single ViewModel to each Fragment, each screen computes and retains its own state. State shared between multiple screens should be shared from the data layer.