일상적인 개발을 위한 빠른 API 참조.
이 페이지는 miniriverpod_core.dart 및 miniriverpod_flutter.dart에서 자주 사용되는 클래스와 메서드를 요약하여 보여줍니다.
핵심 유형
핵심 상태 및 provider 기본 유형입니다.
AsyncValue<T>
AsyncLoading / AsyncData / AsyncError
Provider<T>
선택적으로 autoDispose가 포함된 동기식 provider
AsyncProvider<T>
.future 셀렉터가 포함된 비동기식 provider
리딩 팁
AsyncValue에는 when 메서드가 포함되어 있지 않으므로 switch 패턴 매칭이나 is 검사를 사용하세요.
Ref 및 ProviderContainer 메서드
상태 새로고침, 무효화, 수명 주기 관리 및 mutation 실행을 위한 공통 작업 메서드입니다.
공통 시퀀스
메서드 맵
read / watch / listen : provider를 읽고 구독합니다.
invalidate / refresh / refreshValue : 상태를 다시 계산합니다.
onDispose / keepAlive / emit : 수명 주기 및 스트림 연결을 처리합니다.
mutation / mutate / invoke : 추적된 쓰기 작업을 실행합니다.
scope / overrideWithValue : 의존성 주입(DI) 및 테스트 재정의(override)를 처리합니다.
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 execution
await ref.invoke(userProvider.rename('Alice'));
ProviderScope(container: external)은 수동으로 container.dispose()를 호출해야 합니다.
UncontrolledProviderScope는 주입된 컨테이너를 절대 자동으로 해제하지 않습니다.
Consumer, ConsumerWidget 및 ConsumerStatefulWidget 모두 지원됩니다.