尽管已添加项目,但颤动的空列表提供程序

时间:2020-07-07 11:10:19

标签: flutter dart

我正在使用提供者来构建一个简单的电子商务应用程序。问题是,当用户转到项目的详细信息页面并单击“添加到购物车”按钮时,它会触发addToCart()并将项目添加到列表中。但是,当用户返回主页,选择另一个项目并尝试添加到购物车时,cartList变为空,添加的上一个项目消失了。不知道下面的代码有什么问题,或者可能是其他地方引起了问题。谢谢

class CartProvider extends ChangeNotifier{

  List<Product> _cartList = [];
  List<Product> get cartList => _cartList;

  int _cartSum = 0;
  int get cartSum => _cartSum;

  addToCart(Product item){
    _cartList.add(item);
    _cartSum = 0;
    _cartList.forEach((item) {
      _cartSum = _cartSum + item.price;
    });
    notifyListeners();
    print(_cartList.length);
  }

  removeFromCart(Product item){
    _cartList.remove(item);
    if(_cartSum > 0){
      _cartSum = _cartSum - item.price;
    }
    notifyListeners();
  }

}

0 个答案:

没有答案