我正在开发一个项目,在其中生成订单列表。每当我尝试从列表中删除一个项目时。它抛出了异常RangeError (index): Invalid value: Only valid value is 0: 1。但是,它会同时删除该项目。如果存在范围问题,为什么要删除该项目?或者这个错误是什么时候产生的?另一件事是如何在特定小部件中应用 try/catch?
这是代码:
class OrderList extends StatefulWidget {
@override
_OrderListState createState() => _OrderListState();
}
class _OrderListState extends State<OrderList> {
CartList cart = CartList.instance;
final GlobalKey<AnimatedListState> _key = GlobalKey();
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
backgroundColor: Colors.red,
elevation: 0.0,
title: Text('Orders'),
centerTitle: true,
actions: <Widget>[
Padding(
padding: const EdgeInsets.all(16.0),
child: Badge(
child: Icon(Icons.shopping_cart, color: Colors.white, size: 40),
badgeContent: Text(
cart.listLength(),
style: TextStyle(color: Colors.white),
),
badgeColor: Colors.amber,
toAnimate: …Run Code Online (Sandbox Code Playgroud)