首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Flutter中获取错误时,需要的值类型为'List<dynamic>',但得到的值类型为'({bool growable}) => List<dynamic>'‘

在Flutter中获取错误时,需要的值类型为'List<dynamic>',但得到的值类型为'({bool growable}) => List<dynamic>'‘
EN

Stack Overflow用户
提问于 2021-09-29 15:56:04
回答 1查看 282关注 0票数 0

在尝试动态形成列表并在UI中显示列表时,我在Flutter中遇到以下错误。

‘应为'List’类型的值,但获得的类型为'({bool growable}) => List'‘

下面是我如何形成这个列表的:

代码语言:javascript
复制
  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类:

代码语言:javascript
复制
class Contract {
  final String contractId;

  Contract(
      {this.contractId});

  factory Contract.fromJson(Map<String, dynamic> json) {
    return Contract(
        contractId: json['contractId'].toString(),
  }
}

和下面的代码来显示列表-

代码语言:javascript
复制
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认为静态列表和可增长列表是不同的,这就是问题所在。我试过一些选角,但没能成功。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-29 17:07:07

也许你忘了把括号加到.toList() (你用的是.toList)?

代码语言:javascript
复制
List items = jsonDecode(response.body)['result'].toList();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69379736

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档