flutter中的provider报错

发布于 2022-09-12 14:00:58 字数 1211 浏览 12 评论 0

class MeetingListModel with ChangeNotifier {
  int _count = 0;
  int get count => _count;
  void add() {
    _count++;
    notifyListeners();
  }
}

class MeetingList extends StatefulWidget {
  @override
  _MeetingListState createState() => _MeetingListState();
}

class _MeetingListState extends State<MeetingList> {
  int type = 0;

  @override
  Widget build(BuildContext context) {
    return MultiProvider(
        providers: [
          ChangeNotifierProvider(
            create: (_) => MeetingListModel(),
          )
        ],
        child: Scaffold(
          body: Center(
            child: Column(children: [
              GestureDetector(
                  onTap: () {
                    context.watch<MeetingListModel>().add();
                  },
                  child: Text("会议列表")),
              Text(context.watch<MeetingListModel>().count.toString()),
            ]),
          ),
        ));
  }
}

这样写为什么会报错,按照推荐的写法

Widget build(BuildContext context) {
 return Provider<Example>(
create: (_) => Example(),
 builder: (context) {
 return Text(context.watch<Example>()),
}),}

也同样报错,求解啊

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

锦上情书 2022-09-19 14:00:58
context.watch<MeetingListModel>().add();

watch改成read试试

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文