我爱模板网 > 建站教程 > APP开发,混合APP >  flutter Provider.of without passing `listen: false`.正文

flutter Provider.of without passing `listen: false`.

今天在用Provider时,调用继承自ChangeNotifier的Counter类里面的方法时,写了下面的代码:
floatingActionButton: FloatingActionButton(
  onPressed: () => {Provider.of<Counter>(context).increment()},
  child: Icon(Icons.add),
),
点击这个floatingActionButton时,老是报下面的错误:
Provider.of without passing `listen: false`.
找了老半天,总算找到了,原因是这里的of方法参数里面少了“listen: false”,补上就行了:
Provider.of<Counter>(context, listen: false).increment()
此外,调用Provider里面的值,不需要:
Provider.of<Counter>(context).count
附上Counter类:
class Counter with ChangeNotifier {
  int _count = 0;
  int get count => _count;

  void increment() {
    _count++;
    notifyListeners();
  }
}



部分素材资源来源网站,本站提供免费下载,如有侵权请联系站长马上删除!
上一篇:flutter: Connection refused, errno = 111, address = 127.0.0. 下一篇:Flutter笔记1:Provider的使用
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
选择头像:
最新评论

猜你喜欢