private_collision_in_mixin_application
私有名称“{0}”(由“{1}”定义)与“{2}”定义的同名私有成员冲突。
描述
#当两个定义了相同私有成员的 mixin 在定义这些 mixin 的库之外的库中,于同一个类中一起使用时,分析器会生成此诊断。
示例
#假设有一个文件 a.dart 包含以下代码
dart
mixin A {
void _foo() {}
}
mixin B {
void _foo() {}
}以下代码会产生此诊断,因为 mixin A 和 B 都定义了方法 _foo
dart
import 'a.dart';
class C extends Object with A, B {}常见修复方法
#如果你不需要这两个 mixin,请从 with 子句中移除其中一个
dart
import 'a.dart';
class C extends Object with A, B {}如果你需要这两个 mixin,请重命名其中一个 mixin 中的冲突成员。