在flutter应用程序中出现堆栈溢出错误

mmvthczy  于 2023-02-20  发布在  Flutter
关注(0)|答案(1)|浏览(279)

1.我试图通过使用不同小部件之间的提供程序传递数据,但我得到了错误堆栈溢出流和代码似乎不错?

'''

 Expanded(
             child: ListView.builder(
               itemCount: items.itemsProvide.length,
               itemBuilder: (ctx, i) => CartItemsDw(
                   items.itemsProvide.values.toList()[i].id,
                   items.itemsProvide.values.toList()[i].title,
                   items.itemsProvide.values.toList()[i].price,
                   items.itemsProvide.values.toList()[i].quatity),
             ),
           )

'''

1.我尝试将数据传递到下面的另一个小部件,当尝试访问此小部件的数据时,出现错误
'''

import 'package:flutter/material.dart';
 class CartItemsDw extends StatelessWidget {
   final String id;
   final String title;
   final double price;
   final int quantity;
   CartItemsDw( this.id,this.title,this.price, this.quantity);
   Widget build(BuildContext context) {
     return Card(
       margin: EdgeInsets.symmetric(horizontal: 10,vertical: 4),
       child: Padding(padding: EdgeInsets.all(8),
       child: ListTile(leading: CircleAvatar(child: Text('\$$price'),),
       title: Text(title),
       subtitle: Text('total \$${(price*quantity)}'),
       trailing: Text('\$$quantity x'),
       ),  
      ),
     );
   }
 }

'''
pw136qt2

pw136qt21#

记住,Listview.builder是自动扩展和滚动的。只需要从列表外面移除扩展的 Package 。

ListView.builder(
               itemCount: items.itemsProvide.length,
               itemBuilder: (ctx, i) => CartItemsDw(
                   items.itemsProvide.values.toList()[i].id,
                   items.itemsProvide.values.toList()[i].title,
                   items.itemsProvide.values.toList()[i].price,
                   items.itemsProvide.values.toList()[i].quatity),
             );

相关问题