跳到主内容

subtype_of_deferred_class

类和混入不能实现延迟加载的类。

类不能继承延迟加载的类。

类不能混入延迟加载的类。

描述

#

当类型(类或混入)是使用延迟导入的库中的类的子类型时,分析器会产生此诊断信息。类型的超类型必须与该类型同时编译,而延迟加载库中的类直到该库加载后才会编译。

有关更多信息,请参阅延迟加载库

示例

#

假设有一个定义类 A 的文件 a.dart

dart
class A {}

以下代码会产生此诊断信息,因为类 B 的超类是在延迟加载库中声明的

dart
import 'a.dart' deferred as a;

class B extends a.A {}

常见修复方法

#

如果你需要创建延迟加载库中类型的子类型,则移除 deferred 关键字

dart
import 'a.dart' as a;

class B extends a.A {}