首页 > 解决方案 > 为什么 map 的值变成了一个奇怪的值?

问题描述

将某些产品添加到购物车时

addtoCart(_cartItem)功能

执行此行后 _item['qty'] = _item['qty'] + _cartItem['qty'];

两者都_item['qty']_cartItem['qty']是两倍_cartItem['qty']

任何人都可以帮忙吗?

 List<Map<String, dynamic>> _cartItems =
      List.from(_shoppingCarts[_merchantId]['cartItems']);
  _cartItemsList = _cartItems.map((Map<String, dynamic> _item) { 
    if (_item['item_id'] == _cartItem['item_id'] &&
        _item['price'] == _cartItem['price']) {
      _isInCart = true; 
      _item['qty'] = _item['qty'] + _cartItem['qty'];

    }
    return _item;
  }).toList();

标签: dart

解决方案


推荐阅读