I use Provider
for state management and for separate business logic from UI.
I have put some Provider
above MaterialApp
so can access everywhere in app (for example user info).
So I try put some Provider
which are only use on some pages lower in widget tree.
For example in my purchase item flow I can have: SelectItemPage
=> ConfirmItemPage
=> CheckOutPage
.
But my issue is Navigator.push()
create separate widget tree every time. So if I initialise a Provider
in SelectItemPage
this cannot be accessed in ConfirmItemPage
or CheckOutPage
.
I want Provider
be scope to this flow, but I cannot see how.
How I can solve this? Or my approach is wrong?
Edit: I know I can use prop drilling for pass data from SelectItemPage
=> ConfirmItemPage
=> CheckOutPage
but this hard to maintain. I want use Provider
instead of prop drilling.