Installez miniriverpod en quelques minutes.

Définissez les contraintes du SDK, ajoutez le package et vérifiez que ProviderScope + WidgetRef.watch sont correctement reliés.

Prérequis

Utilisez les mêmes contraintes que celles du package afin d'éviter les écarts entre l'analyseur et l'exécution.

Dart SDK

>=3.10.0 <4.0.0

Flutter

Astuce

Si votre application est bloquée sous Dart 3.10, augmentez d'abord les contraintes du SDK, puis exécutez flutter pub get.

Installation

Privilégiez l'installation via CLI, puis gardez la version alignée avec le changelog du package.

CLI

pubspec.yaml

# Ajouter aux dépendances
dependencies:
  miniriverpod: ^0.0.2

Premiers pas

Encapsulez votre application dans ProviderScope, définissez un Provider et affichez l'état depuis ConsumerWidget.

import 'package:flutter/widgets.dart';
import 'package:miniriverpod/miniriverpod.dart';

final counterProvider = Provider<int>((ref) => 0);

void main() {
  runApp(const ProviderScope(child: CounterApp()));
}

class CounterApp extends ConsumerWidget {
  const CounterApp({super.key});

  @override
  Widget build(BuildContext context, WidgetRef ref) {
    final count = ref.watch(counterProvider);
    return Directionality(
      textDirection: TextDirection.ltr,
      child: Center(child: Text('$count')),
    );
  }
}
Utilisez Provider((ref) => ...) pour les valeurs synchrones.
Utilisez AsyncProvider<T>((ref) async => ...) pour Future et ref.emit(stream) pour Stream.
Passez à ref.invoke(provider.method()) lorsque vous implémentez des mutations.

Étapes suivantes

Concepts de base

Comprenez l'identité des providers basée sur les arguments, l'injection Scope et les choix de conception sans codegen.

Ouvrir les concepts de base

Providers et lectures

Apprenez le comportement de watch/read/listen et les modèles d'actualisation d'AsyncProvider.

Ouvrir les providers

Référence API

Retrouvez rapidement des méthodes comme invalidate, refreshValue, keepAlive et invoke.

Ouvrir la référence API