Flutter State Management using ValueNotifier and ValueListenableBuilder - No Packages

2 years ago
21

Dashboard using `ValueNotifier` and `ValueListenableBuilder`.
State Management by using built-in Flutter classes. No Packages.

What is covered
In this project, you are going to take a look at:
- How to use `ValueNotifier` and `ValueListenableBuilder` to pass data from a parent (ancestor) widget to child (descendant) widgets in the widget tree
- State Management with build-in classes, no packages

The Problem:
- Dashboard app needs to chart espresso, coffee, and latte consumption
- Drawing each bar, the chart needs to refresh independently for performance

The Solution:
- Use the `ValueNotifier` and `ValueListenableBuilder` to allow to selectively rebuild individual widgets for performance

ValueNotifier and ValueListenableBuilder
The `ValueNotifier` and `ValueListenableBuilder` allow to selectively rebuild individual widgets for performance

1. Create a class that extends `ValueNotifier`
2. Add fields to contain data defining them as `ValueNotifier`
3. Add methods to modify data and call the `notifyListeners()` method
4. Add the `ValueListenableBuilder` widget in the widget tree to rebuild widgets selectively if the data changed by individual field

How it Works
`ValueNotifier` and `ValueListenableBuilder` - The `ValueNotifier` and `ValueListenableBuilder` allow to selectively rebuild individual widgets for performance. Use fields to contain data defining them as `ValueNotifier`. Use methods to modify data and call the `notifyListeners()` method. Use the `ValueListenableBuilder` widget in the widget tree to rebuild widgets selectively if the data changed by individual field.

GitHub: https://github.com/JediPixels/dashboard_valuenotifier
Twitter: https://twitter.com/JediPixels
Looking for Updates: https://JediPixels.dev
Blog Article: https://jedipixels.dev/flutter-state-management-using-valuenotifier-valuelistenablebuilder

#flutter #fluttertutorial #dart #flutterdev

Loading comments...