mixin_class_declaration_extends_not_object
クラス「{0}」は、「Object」以外のクラスを拡張しているため、ミックスインとして宣言できません。
説明
#mixin 修飾子が付いているクラスが Object 以外のクラスを拡張している場合に、アナライザーはこの診断を生成します。ミックスインクラスは Object 以外のスーパークラスを持つことはできません。
例
#以下のコードは、mixin 修飾子を持つクラス B が A を拡張しているため、この診断を生成します。
dart
class A {}
mixin class B extends A {}一般的な修正
#クラスをミックスインとして使用したい場合は、スーパークラスを Object に変更してください。明示的に指定するか、extends 句を削除してください。
dart
class A {}
mixin class B {}クラスが Object 以外のスーパークラスを持つ必要がある場合は、mixin 修飾子を削除してください。
dart
class A {}
class B extends A {}ミックスインと Object 以外のクラスのサブクラスの両方を必要とする場合は、サブクラスのメンバーを新しいミックスインに移動し、サブクラスから mixin 修飾子を削除し、その新しいミックスインをサブクラスに適用してください。
dart
class A {}
class B extends A with M {}
mixin M {}サブクラスのメンバーによっては、ミックスインに on 句を追加する必要がある場合があります。