跳到主要内容

unnecessary_import

导入 '{0}' 是不必要的,因为所有使用的元素也由导入 '{1}' 提供。

描述

#

当导入不是必需的,因为所有在导入库中导入和引用的名称也可以通过另一个导入可见时,分析器会生成此诊断信息。

示例

#

假设有一个文件 a.dart 包含以下内容

dart
class A {}

并且,假设有一个文件 b.dart 包含以下内容

dart
export 'a.dart';

class B {}

以下代码会产生此诊断信息,因为从 a.dart 导入的类 A 也从 b.dart 导入。移除 a.dart 的导入不会改变语义。

dart
import 'a.dart';
import 'b.dart';

void f(A a, B b) {}

常见修复方法

#

如果不需要该导入,则将其移除。

如果此导入导入的某些名称打算使用但尚未被使用,并且这些名称未通过其他导入导入,则添加对这些名称的缺失引用。