【问题标题】:Flutter error: The argument type 'List<dynamic>?' can't be assigned to the parameter type 'List<Movie>' [closed]颤振错误:参数类型“列表<动态>?”无法分配给参数类型'List<Movie>' [关闭]
【发布时间】:2021-09-10 08:06:00
【问题描述】:

参数类型“列表?”不能分配给参数类型“列表”。

【问题讨论】:

    标签: android flutter dart mobile


    【解决方案1】:

    查看您的代码会很有帮助,这样我就可以提供确切的答案,但正如错误所说,您基本上是在尝试将一个可为空的列表分配给一个需要 Movie 类型元素的 List 变量。

    这是因为您将值传递给需要 List 的变量。

    由于我手头没有你的代码,这里有一些场景可以说明这一点:

    List? a;
    List<Movie> b = a;
    

    这基本上会导致您看到的确切错误。

    void fooBar(List? a) {
      List<Movie> b = a;
    }
    

    同样的错误。

    您需要明确传递到原始 List 字段中的值,无论它来自何处。

    因此,您需要确保在上面的示例中,a 是List&lt;Movie&gt;。这种错误经常发生在上面的第二种情况中,在这种情况下,您有一些方法的参数未设置为严格类型(导致动态)并且具有任何值/您将其标记为可为空(导致列表?投诉)。

    希望对您有所帮助!如果您需要更明确的帮助,请在您的代码示例中留下评论!

    【讨论】:

      猜你喜欢
      • 2019-12-29
      • 2021-10-28
      • 2020-08-31
      • 2021-09-13
      • 2020-11-15
      • 2021-09-10
      • 2021-08-26
      • 2021-08-30
      • 2021-06-04
      相关资源
      最近更新 更多