![](/img/trans.png)
[英]Flutter: Try to use BlocProvider with get_it and auto_route package but context don't find provider
[英]Flutter How to Use Provider with get_it package
我們如何使用 get_it 注冊 Providers class 所以我們只需使用 get_it 注冊一次 Provider 就可以在任何地方使用? 假設我們有 AuthProvider 並且我們像這樣注冊它,
MultiProvider(
providers: [
ChangeNotifierProvider<ProductDataProvider>(
create: (_) => AuthProvider()),
ChangeNotifierProvider<AuthenticationProvider>(
create: (_) => AuthenticationProvider()),
],
child: Container())
所以我想做的是用 get_it 注冊一個 AuthProvider 提供程序,並用 get_it 注冊方法包裝 MaterialApp,這樣我就可以在應用程序 class 的任何地方使用所有這些提供程序。
Provider 是一個小部件,因此它必須在您的小部件樹中。
但我想你是在問你是否可以在沒有上下文和小部件樹之外的情況下訪問提供的數據。
我會考慮制作一個包含關鍵數據的 class。
數據 class 將作為工廠實現。
然后將數據 class 包裝在提供程序中。
鑒於數據 class 是工廠,您實際上並不需要 getit。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.