当尝试动态地形成一个列表并在UI中显示相同时,我在Flutter中得到以下错误。
'期望一个类型为'List'的值,但得到一个类型为'({bool growable}) =>名单">
下面是我创建List的方法:if (response.statusCode == 200) {
List items = jsonDecode(response.body)['result'].toList;
List<Contract> tempContractResults = [];
for (int i = 0; i < items.length; i++) {
Contract temp = Contract.fromJson(jsonDecode(response.body)['result'][i]);
tempContractResults.add(temp);
}
List<Contract> contractResults = tempContractResults;
对象类:
class Contract {
final String contractId;
Contract(
{this.contractId});
factory Contract.fromJson(Map<String, dynamic> json) {
return Contract(
contractId: json['contractId'].toString(),
}
}
和下面的代码显示列表-
child: FutureBuilder<List<Contract>>(
future: futureAlbum,
builder: (context, snapshot) {
if (snapshot.hasData) {
if (snapshot.data != "") {
return ListView.builder(
itemCount: snapshot.data.length,
itemBuilder: (BuildContext context, int index) {
return Text(snapshot.data[index].contractId);
},
);
谁能告诉我可能是什么问题。我在想在颤振的行认为静态列表,可生长的不同,因此这个问题。我试了几次铸造,但没能成功。
也许您忘记为.toList()
添加括号(您使用的是.toList
)?
List items = jsonDecode(response.body)['result'].toList();