我在PyCharm上使用Dart和Polymer开发我的应用程序。我目前有一个错误:
Exception: type 'ObservableList<DrugFilterItem>' is not a subtype of type 'ObservableList<DrugCompareItem>' of '__$orderFilterList@51385934'
ObservableList is from package:observe/src/observable_list.dart
DrugFilterItem is from package:synmed/drug_elements/views/drug_filter_menu.dart
ObservableList is from package:observe/src/observable_list.dart
DrugCompareItem is from package:synmed/drug_elements/views/drug_search_toolbar.dart
DrugFilterItem和DrugCompareItem都是自定义类,DrugCompareItem扩展了DrugFilterItem,错误设计的行是:
ObservableList<DrugCompareItem> orderFilterList = new ObservableList<DrugFilterItem>();
今天突然发生了这个问题:我安装了Pycharm 2016.3并尝试编码,但是我遇到了包阴影的错误,我解决了。因为,我有这个错误,我认为它来自包的问题,因为代码没有从之前到之后发生变化。
我现在发现的事实上并没有什么,我在这类错误上阅读了很多帖子,其中一个经常出现的主题是进口,但我没有发现任何问题。我正在使用Dart 1.20.1和
polymer: "<=0.16.4+1"
core_elements: "<=0.7.1+3"
paper_elements: "<=0.7.1"
有人对我有任何线索吗?谢谢!
答案 0 :(得分:0)
听起来像https://github.com/dart-lang/sdk/issues/14972#issuecomment-108402835
我相信这是按预期工作的。 List不能分配给List,即使它只包含Apples。
有几种方法可以解决这个问题:
iterable.map((x) => x) (removing the generic type), new List<MethodMirror>.from(iterable) new MyIterableWrapper<MethodMirror>(iterable) (where the iterable-wrapper that would need to be written).