Future provider has a initial value, which widgets can use until the Future value is resolved . When resolved, it the FutureProvider will tell it’s descendents to rebuild, using the new value. Importantly, this means that the widgets who rely on the value of a future provider will only rebuild once.
Read moreWhen should I use provider in Flutter?
One of the main reasons to prefer Provider over Statefulwidget s is that, using Provider , you will rebuild only the widgets that needs that value (the Consumers ) while the other will not be rebuilt . Instead when you call setState the whole build function of the widget will be called.
Read more