颤振屏幕上的购物车数量未更新

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

api调用和数量更新成功,但在屏幕上没有显示更新的数量这是我的代码

在这里我为构建器中的数量赋值 int qty = int.parse(cartProduct_list[0].products![index].quantity.toString());

数量更新

                              Row(
                                 children: [
                                   Text("Quantity : "),
                                   DropdownButton(
                                     isDense: true,
                                     hint: Text("Quantity : "),
                                     value: int.parse(cartProduct_list[0].products![index].quantity.toString()),
                                     onChanged: (value)  {
                                       setState(() {
                                         qty = value!;
                                       });
                                       print(qty);

                                       isload = true;
                                       _cartController.updateQty(email.toString(),
                                           sessionData.toString(),
                                           cartProduct_list[0].products![index].productId.toString(),
                                           qty!).then( (value) async {
                                             if(value == 200)
                                               {
                                               SharedPreferences prefs = await SharedPreferences.getInstance();
                                               sessionData = prefs.getString('sessionData');
                                               email = prefs.getString('username_controller');

                                               _cartController.getCart(email!, sessionData!).then((product) {
                                               setState(() {
                                               cartProduct_list.add(product);


                                               });
                                                 setState(() {
                                                   isload = false;

                                                 });
                                               }); }

                                           });
                                       ScaffoldMessenger.of(context).showSnackBar(SnackBar(
                                           content: Text("Cart updated successfully.")));
                                     },
                                      items:  _createList()
                                   ),
                                 ],
                               ),
flutter state flutter-dependencies shopping-cart state-management
1个回答
0
投票

更新变量不正确。请尝试这个。

onChange: (value) {
   setState(() {
      cartProduct_list[0].products![index].quantity = value!;
   });
}
© www.soinside.com 2019 - 2024. All rights reserved.