【发布时间】:2021-10-28 17:52:38
【问题描述】:
我一直在尝试将 List<dynamic> 传递给接收 List<dynamic> 作为参数的类,但出现以下错误:
The argument type 'List<dynamic>?' can't be assigned to the parameter type 'List<dynamic>'.
这是两个类的代码:
Widget _lista() {
return FutureBuilder(
future: menuProvider.cargarData(),
initialData: [],
builder: (context, AsyncSnapshot<List<dynamic>> snapshot) {
return ListView(
children: _listaItems(snapshot.data),
);
},
);
}
我在snapshot.data 代码段中遇到错误:
_listaItems(snapshot.data)
这是接收数据的类:
List<Widget> _listaItems(List<dynamic> data) {
final List<Widget> opciones = [];
data.forEach((opt) {
final widgetTemp = ListTile(
title: Text(opt['texto']),
leading: Icon(Icons.account_circle, color: Colors.blue),
trailing: Icon(
Icons.keyboard_arrow_right,
color: Colors.blue,
),
onTap: () {},
);
opciones..add(widgetTemp)..add(Divider());
});
return opciones;
}
我没有找到任何关于如何解决这个问题的信息,而且我不明白这个错误的根源,因为这两种数据类型是相等的。有什么建议可以解决这个问题吗?
【问题讨论】:
标签: list flutter dart dynamic arguments