Γρήγορη αναφορά API για καθημερινή χρήση.
Αυτή η σελίδα συνοψίζει τις πιο συχνά χρησιμοποιούμενες κλάσεις και μεθόδους από τα miniriverpod_core.dart και miniriverpod_flutter.dart.
Βασικοί τύποι
Βασικά δομικά στοιχεία κατάστασης και provider.
AsyncValue<T>
AsyncLoading / AsyncData / AsyncError
Provider<T>
Συγχρονικός provider με προαιρετικό autoDispose
AsyncProvider<T>
Ασύγχρονος provider με selector .future
Συμβουλή
Το AsyncValue δεν περιλαμβάνει μέθοδο when· χρησιμοποίησε switch pattern matching ή ελέγχους is.
Μέθοδοι του Ref και του ProviderContainer
Κοινές λειτουργικές μέθοδοι για ανανέωση, ακύρωση, κύκλο ζωής και εκτέλεση mutations.
Συνηθισμένη ακολουθία
Χάρτης μεθόδων
read / watch / listen : ανάγνωση και εγγραφή σε providers.
invalidate / refresh / refreshValue : επανυπολογισμός κατάστασης.
onDispose / keepAlive / emit : κύκλος ζωής και σύνδεση stream.
mutation / mutate / invoke : καταγεγραμμένες λειτουργίες εγγραφής.
scope / overrideWithValue : DI και δοκιμαστικές αντικαταστάσεις.
Σύνοψη Flutter API
Σημεία εισόδου ProviderScope και WidgetRef που χρησιμοποιούνται στον κώδικα της εφαρμογής.
// Scope
ProviderScope(
child: const App(),
);
// ConsumerWidget
class Header extends ConsumerWidget {
const Header({super.key});
@override
Widget build(BuildContext context, WidgetRef ref) {
final user = ref.watch(currentUser);
return Text('$user');
}
}
// Εκτέλεση της mutation
await ref.invoke(userProvider.rename('Alice'));
Το ProviderScope(container: external) απαιτεί χειροκίνητη κλήση του container.dispose().
Το UncontrolledProviderScope δεν κάνει ποτέ dispose στο container που έχει εισαχθεί.
Υποστηρίζονται τα Consumer, ConsumerWidget και ConsumerStatefulWidget.
Επόμενα βήματα
Providers
Επιστροφή στην πρακτική χρήση των Provider, AsyncProvider και των read APIs.
Άνοιγμα Providers