如何在颤振中创建同一提供者的多个实例

时间:2021-04-15 07:45:37

标签: flutter dart flutter-provider

我正在使用提供程序来获取数据并按如下方式通知侦听器:

class CategoryProvider with ChangeNotifier {

  Future<void> getData() async {
     ......
     ......
     notifyListeners();
   }

}

我的 CategoryListView 小部件正在侦听此提供程序,如下所示:

Widget build(BuildContext context) {
    var collectionData = Provider.of<CategoryProvider>(context);
}

我按如下方式推送 CategoryListView 的新实例:

Navigator.of(context).pushNamed(CategoryListView.routeName);

我正在从 CategoryListView 小部件本身推送 CategoryListView 的新实例。 它在推送新实例时运行良好,但在返回时,所有 CategoryListView 小部件都显示最新的 CategoryListView 小部件的数据,因为它正在侦听同一个提供者。 如何创建 provider 的新实例并将其关联到小部件实例?有没有更好的方法来处理这个问题?

0 个答案:

没有答案