跳到主要內容

non_constant_annotation_constructor

註解建立只能呼叫 const 建構函式。

描述

#

當註解呼叫現有建構函式,而該被呼叫的建構函式不是 const 建構函式時,分析器會產生此診斷。

示例

#

以下程式碼會產生此診斷,因為 C 的建構函式不是 const 建構函式

dart
@C()
void f() {
}

class C {
  C();
}

常見解決方法

#

如果類可以擁有 const 建構函式,則建立一個可用於註解的 const 建構函式。

dart
@C()
void f() {
}

class C {
  const C();
}

如果類不能擁有 const 建構函式,則移除註解或使用不同的類進行註解。