颤振“参数类型不可分配”两种相同类型的错误

Posted

技术标签:

【中文标题】颤振“参数类型不可分配”两种相同类型的错误【英文标题】:Flutter "argument type not assignable" Error with two identical types 【发布时间】:2020-09-18 22:19:50 【问题描述】:

Flutter 向我显示了这个错误,但是这两种类型是相同的。

[CartItem 这只是一个简单的模型;存在冲突,因为另一个小部件具有相同的名称,但我在 import 语句中使用“as”解决了它]

参数类型 List<CartItems>(其中 CartItem 在 /Users/marco/Documenti Locali/shop_app/lib/providers/cart.dart 中定义)'不能分配给参数类型 List<CartItems>(其中 CartItem 是在 /Users/marco/Documenti Locali/shop_app/lib/providers/cart.dart)'.dartargument_type_not_assignable 中定义

list.dart(56, 16):列表定义在/Users/marco/flutter/bin/cache/pkg/sky_engine/lib/core/list.dart

cart.dart(3, 7):CartItem 在 /Users/marco/Documenti Locali/shop_app/lib/providers/cart.dart 中定义

list.dart(56, 16):列表定义在/Users/marco/flutter/bin/cache/pkg/sky_engine/lib/core/list.dart

cart.dart(3, 7):CartItem 在 /Users/marco/Documenti Locali/shop_app/lib/providers/cart.dart 中定义

窥视问题 (⌥F8) 没有可用的快速修复方法

【问题讨论】:

【参考方案1】:

检查文件顶部的导入语句,即使您将目录文件夹名称输入错误为“Caps 或 Small”,也会出现此错误。

【讨论】:

【参考方案2】:

import 语句中的双斜杠导致了这个奇怪的错误。

【讨论】:

感谢您发布更新/解决方案。它拯救了我的理智!【参考方案3】:

你也应该在用法中使用库前缀,所以如果你的命名空间是

import 'package:app/xxxx/shop_app/lib/providers/cart.dart as shop_cart;

您也应该在通用列表中指定它,例如;

列出 shopCarts = 等等...;

【讨论】:

以上是关于颤振“参数类型不可分配”两种相同类型的错误的主要内容,如果未能解决你的问题,请参考以下文章

Promise 回调参数类型不可分配给 '(value: unknown) => void | PromiseLike<void>'

颤振列表错误参数类型'List'不能分配给参数类型'String'

颤振错误:参数类型“列表<动态>?”无法分配给参数类型'List<Movie>' [关闭]

颤振错误:参数类型“列表<动态>?”不能分配给参数类型“列表<动态>”

WebStorm 中的 Redux-toolkit 操作参数

迁移空安全后颤振模拟单元测试错误