ambiguous_import
名稱 '{0}' 在庫 {1} 中已定義。
描述
#當引用的名稱在兩個或多個匯入的庫中宣告時,分析器會產生此診斷資訊。
示例
#假設有一個定義了類(本例中的 C)的庫 (a.dart)
dart
class A {}
class C {}以及一個定義了同名不同類的庫 (b.dart)
dart
class B {}
class C {}以下程式碼會產生此診斷資訊
dart
import 'a.dart';
import 'b.dart';
void f(C c1, C c2) {}常見修復方法
#如果某些庫不需要,則移除其匯入指令
dart
import 'a.dart';
void f(C c1, C c2) {}如果該名稱仍然由多個庫定義,則為除一個庫之外的所有匯入指令新增 hide 子句
dart
import 'a.dart' hide C;
import 'b.dart';
void f(C c1, C c2) {}如果您必須能夠引用這些型別中的多個,則為每個匯入指令新增字首,並使用相應的字首限定引用
dart
import 'a.dart' as a;
import 'b.dart' as b;
void f(a.C c1, b.C c2) {}