跳到主內容

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 {}