Aller au contenu principal

Riverpod logoRiverpod

Un framework Réactif de gestion d'état et d'injection de dépendences

Créer un provider

[object Object]

Consommer le provider

[object Object]
[object Object]

Sans exceptions

Sans ProviderNotFoundException et évite d'oublier de gérer les états d'erreurs ou de chargement. Avec Riverpod, si le code compile, il marche.

[object Object]

Provider, sans ses limitations

Riverpod est inspiré de Provider mais résous des problèmes clé tel que: le support de plusieurs providers du même type; attendre les providers asynchone; définir des providers n'import où; ...

[object Object]

Indépendent de Flutter

Permet de créer/partager/tester des providers, sans dépendre de Flutter. Cela inclus être capable d'écouter un provider sans BuildContext.

Déclarez un état partagé de n'import où

Plus besoin de sauter entre votre main.dart and vos fichiers d'UI.

Placez le code de votre état partagé où vous voulez, que ce soit à côté du Widget qui l'utilise ou dans un autre package, sans perdre en testabilité.

Declare your providers anywhere
Combining providers

Mise à jour automatique de l'état de l'application et l'UI, seulement quand nécéssaire

Il n'est plus necessaire de trier/filter nos listes dans la methode build ou d'utiliser des méchaniques avancées de cache.

Grace à Provider et aux "families", triez vos listes ou faites des requêtes HTTP seulement quand c'est vraiment necessaire.

Lecture sécurisé des providers

Lire un provider ne causera pas d'exceptions. Si vous pouvez lire un provider, une valeur valide sera obtenue.

Cela s'applique aussi aux valeurs obtenues de manière asynchrone. Avec Riverpod, les états de chargement et d'erreur seront gérés de manière sécurisés.
Asynchronously loaded providers
Devtool support

Inspectez l'état de votre application avec le Devtool Flutter

Via Riverpod, votre état est visible par défaut dans l'outil de Flutter's.
Qui plus est, un outil d'inspection et d'edition d'état complet est en développement.