Beckground: I noticed that in my app StreamProvider emits cause dependant FutureProvider to reevaluate its value, but providers dependent on this provider does not. I use Rivderpod 2.
I have a chain of dependent providers:
FutureProvider1 -> FutureProvider2 -> StreamProvider
So FutureProvider2 is a dependency for FutureProvider1 and StreamProvider is a dependency for FutureProvider2.
Logs show that whenever StreamProvider emits a new value, FutureProvider2 is reevaluated, but its new value is NOT used to reevaluate FutureProvider1. These providers are chained by ref.watch()
. My goal is to make this relation fully reactive and declarative.
How to make both providers reevaluate its value whenever StreamProvider emits a new value? Should I use the new AsyncNotifierProvider for that?