undefined_extension_getter
拡張機能「{1}」には、ゲッター「{0}」が定義されていません。
説明
#この診断は、拡張機能のオーバーライドを使用してゲッターを呼び出そうとしたが、指定された拡張機能にそのゲッターが定義されていない場合にアナライザーによって生成されます。また、静的ゲッターを参照したが、指定された拡張機能にそのゲッターが定義されていない場合にも生成されます。
例
#以下のコードは、拡張機能Eに名前がbのインスタンスゲッターが宣言されていないため、この診断を生成します。
dart
extension E on String {
String get a => 'a';
}
extension F on String {
String get b => 'b';
}
void f() {
E('c').b;
}以下のコードは、拡張機能Eに名前がaの静的ゲッターが宣言されていないため、この診断を生成します。
dart
extension E on String {}
var x = E.a;一般的な修正
#ゲッターの名前が間違っている場合は、既存のゲッターの名前に変更してください。
dart
extension E on String {
String get a => 'a';
}
extension F on String {
String get b => 'b';
}
void f() {
E('c').a;
}ゲッターの名前は正しいが拡張機能の名前が間違っている場合は、拡張機能の名前を正しい名前に変更してください。
dart
extension E on String {
String get a => 'a';
}
extension F on String {
String get b => 'b';
}
void f() {
F('c').b;
}ゲッターと拡張機能の名前が両方とも正しいが、ゲッターが定義されていない場合は、ゲッターを定義してください。
dart
extension E on String {
String get a => 'a';
String get b => 'z';
}
extension F on String {
String get b => 'b';
}
void f() {
E('c').b;
}