![](/img/trans.png)
[英]Flutter Web, Riverpod and GoRouter, How to access state notifier from within GoRouter
[英]How to update riverpod from GoRouter?
在我的GoRouter
中,我從 URL 檢索查詢參數:
builder: (context, state) {
String q = state.queryParams['q'] ?? '';
int pageNumberInt = int.tryParse(state.queryParams['page'] ?? '1') ?? 1;
// Return component...
}
我想在返回 Widget 之前更新提供商的 state,但是我如何才能訪問“ref”來執行以下操作:
ref.watch(searchFieldValueProvider.notifier).update((state) => q)
在任何情況下,您都需要訪問Ref
才能更新提供者狀態。 您可以將其作為參數或在 class 構造函數中傳遞。 這完全取決於您的架構。
並且,將需要使用ref.read(...)
或ref.refresh(...)
(如果我們只需要重置狀態)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.