assignment_to_final_no_setter
類 '{1}' 中沒有名為 '{0}' 的 setter。
描述
#當分析器發現對 setter 的引用,但該型別沒有定義 setter,卻定義了同名 getter 時,會產生此診斷訊息。
示例
#以下程式碼會產生此診斷訊息,因為在 C 中沒有名為 x 的 setter,但存在一個名為 x 的 getter
dart
class C {
int get x => 0;
set y(int p) {}
}
void f(C c) {
c.x = 1;
}常見修復方法
#如果您想呼叫現有的 setter,請糾正名稱
dart
class C {
int get x => 0;
set y(int p) {}
}
void f(C c) {
c.y = 1;
}如果您想呼叫 setter 但它尚未存在,則宣告它
dart
class C {
int get x => 0;
set x(int p) {}
set y(int p) {}
}
void f(C c) {
c.x = 1;
}