在尝试动态形成列表并在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;Object类:
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);
},
);有没有人能给我指点一下这个问题。我在想,flutter认为静态列表和可增长列表是不同的,这就是问题所在。我试过一些选角,但没能成功。
发布于 2021-09-29 17:07:07
也许你忘了把括号加到.toList() (你用的是.toList)?
List items = jsonDecode(response.body)['result'].toList();https://stackoverflow.com/questions/69379736
复制相似问题