我正在使用提供者来构建一个简单的电子商务应用程序。问题是,当用户转到项目的详细信息页面并单击“添加到购物车”按钮时,它会触发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();
}
}