ค้นหา API อย่างรวดเร็วสำหรับงานประจำวัน.

หน้านี้สรุปคลาสและเมธอดที่ใช้บ่อยจาก miniriverpod_core.dart และ miniriverpod_flutter.dart.

ชนิดข้อมูลหลัก

โครงสร้างพื้นฐานของ state และ provider.

AsyncValue<T>

AsyncLoading / AsyncData / AsyncError

Provider<T>

provider แบบ synchronous พร้อม autoDispose แบบเลือกใช้

AsyncProvider<T>

provider แบบ asynchronous พร้อมตัวเลือก .future

เคล็ดลับ

AsyncValue ไม่มีเมธอด when; ให้ใช้ switch pattern matching หรือการตรวจ `is`.

เมธอดของ Ref และ ProviderContainer

เมธอดการทำงานที่ใช้บ่อยสำหรับการรีเฟรช การทำให้เป็นโมฆะ วงจรชีวิต และการเรียก mutation.

ลำดับทั่วไป

แผนผังเมธอด

read / watch / listen                 : อ่านและ subscribe provider.
invalidate / refresh / refreshValue    : คำนวณสถานะใหม่.
onDispose / keepAlive / emit           : วงจรชีวิตและการเชื่อมต่อ stream.
mutation / mutate / invoke             : การเขียนที่ถูกติดตาม.
scope / overrideWithValue              : DI และการ override สำหรับการทดสอบ.

ภาพรวม Flutter API

จุดเข้า ProviderScope + WidgetRef ที่ใช้ในโค้ดแอป

// ขอบเขต
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 และ API สำหรับการอ่านในทางปฏิบัติ.

เปิด Providers

Mutations

สร้าง write flow แบบชัดเจนพร้อมควบคุม concurrency.

เปิด Mutations