mixin_ inherits_ from_ not_ object
Detalhes sobre o diagnóstico 'mixin_inherits_from_not_object' produzido pelo analisador do Dart.
The class '{0}' can't be used as a mixin because it extends a class other than 'Object'.
Descrição
#
O analisador emite este diagnóstico quando uma classe que estende uma classe
diferente de Object é usada como mixin.
Exemplo
#
O código a seguir gera este diagnóstico porque a classe B, que estende A,
está sendo usada como mixin por C:
//@dart=2.19
class A {}
class B extends A {}
class C with B {}
Correções comuns
#
Se a classe usada como mixin puder ser alterada para estender Object, então
altere-a:
//@dart=2.19
class A {}
class B {}
class C with B {}
Se a classe usada como mixin não puder ser alterada e a classe que a usa
estender Object, então estenda a classe usada como mixin:
class A {}
class B extends A {}
class C extends B {}
Se a classe não estender Object, ou se você quiser poder misturar o
comportamento de B em outros lugares, então crie um mixin de verdade:
class A {}
mixin M on A {}
class B extends A with M {}
class C extends A with M {}
Salvo indicação em contrário, a documentação neste site reflete Dart 3.13.7. Relatar um problema.
Encontrou essa página sem tradução ou que precisa de correção? Abra uma issue e nos ajude a manter esse site em PT-BR para ajudar pessoas como você.