කියවීමේ මාර්ග: watch, read සහ listen.
Provider සමකාලීන තත්වය ලබා දෙයි. AsyncProvider AsyncValue ආපසු දී දැඩි lifecycle handling සමඟ Future සහ Stream ඉදිරිපත් කළ හැකිය.
Provider වර්ග
data source සහ update frequency අනුව provider type තෝරන්න.
Provider<T>
සමකාලීන values සහ local derived state
AsyncProvider<T>
Future/Stream මඟින් ධාවනය වන state ලෙස AsyncValue<T>
provider.future
Provider<Future<T>> expose කරන selector
ඉඟිය
state network හෝ stream එකකින් එන්නේ නම්, මුලින් AsyncProvider තෝරන්න. Provider එක pure synchronous logic සඳහා තබාගන්න.
කියවීමේ API matrix
build paths තුළ watch, one-shot access සඳහා read, සහ side effects සඳහා listen භාවිතා කරන්න.
ඉතා පොදු
watch / read / listen
ref.watch(provider) : subscribe and rebuild when value changes.
ref.read(provider) : read current snapshot without subscribing.
container.listen(...) : callback-driven updates; optional fireImmediately.
AsyncProvider සමඟ Future සහ Stream
එක් AsyncProvider එකකට Future එකක් ආපසු දිය හැකියි හෝ ref.emit(stream) මඟින් Stream එකක් බැඳිය හැකියි.
final currentUser = AsyncProvider<User>((ref) async {
final api = ref.watch(apiProvider);
return api.me();
});
final liveUser = AsyncProvider<User>((ref) {
final stream = ref.watch(apiProvider).live();
ref.emit(stream);
return const User(name: 'Loading...');
}, autoDispose: true, autoDisposeDelay: const Duration(milliseconds: 250));
// Await as Future
final user = await ref.watch(currentUser.future);
ඊළඟ පියවර
Mutations
write operations provider methods වෙත ගෙන යාමෙන් ref.invoke මඟින් ක්රියාත්මක කරන්න.
Flutter API විවෘත කරන්නFlutter API
Consumer, ConsumerWidget, සහ ConsumerStatefulWidget අතර තෝරන්න.
API Reference විවෘත කරන්න