Flutter Provider 整数重置

问题描述 投票:0回答:0

我有一个这样的计数变量

  int _count = 1;

  int get count => _count;

  void setCount(bool isIncrement) {
    if (isIncrement) {
      _count = checkCount(_count + 1);
    } else {
      _count = checkCount(_count - 1);
      print("decrement" + _count.toString());
    }

    notifyListeners();
  }

  int checkCount(int count) {
    if (count < 0) {
      return 0;
    } else if (count > 10) {
      return 10;
    } else {
      return count;
    }
  }
}

我正在使用提供商在食品页面上使用它。但是当我在页面之间切换时,计数变量会从它停止的地方继续。我希望它在每次页面更改时以 1 重新启动。

class Hamburger extends StatefulWidget {
  const Hamburger({super.key, required Count count});

  @override
  State<Hamburger> createState() => _HamburgerState();
}

class _HamburgerState extends State<Hamburger> {
  @override
  Widget build(BuildContext context) {
    Color coloricon = Provider.of<iconcolor>(context).coloricon;
    int count = Provider.of<Count>(context).count;
    return Scaffold(
    


flutter dart provider
© www.soinside.com 2019 - 2024. All rights reserved.