Flutter(dart)ListView Builder窗口小部件给出无效的参数错误

时间:2019-02-27 18:53:07

标签: dart flutter

所以,我已经创建了一个基本地图

     var tracks = const [
    {
      'title':'Something',
      'subtitle':'Something'
    },
    {
      'title':'Something Else',
    },
    {
      'title':'Admission',
    },
    {
      'title':'University',
    },
    {
      'title':'Exam',
'subtitle':'Something'
    },
    {
      'title':'Job',
    },
  ];

ListView.builder以下列方式调用它:

var trackTitles = tracks[index];

然后被这样使用:

return PrimaryMail(
              title: trackTitles['titles'],
            )

但是,它在最终版本中抛出"Invalid Argument(s): titles错误。没有看到飞镖分析问题。我看到的唯一错误(信息,不严重)是This class (or a class which this class inherits from) is marked as '@immutable', but one or more of its instance fields are not final: Home.tracks (must_be_immutable] lib\main.dart:18)。 [编辑:通过将var替换为final已解决了不可变的问题,但原始问题仍然存在]

那么,即使标题键确实存在,有什么方法可以理解为什么它抛出无效的参数?

此页面的完整代码为here

1 个答案:

答案 0 :(得分:0)

在您在lib \ main.dart:18行中声明的字段之前添加final

如果那里有var,请用var替换final