跳到主内容

multiple_combinators

使用多个 'hide' 或 'show' 组合子是没有必要的,而且常常产生意想不到的结果。

描述

#

当导入或导出指令包含多个组合子时,分析器会产生此诊断信息。

示例

#

以下代码会产生此诊断信息,因为第二个 show 组合子隐藏了 Listint

dart
import 'dart:core' show Future, List, int show Future;

var x = Future.value(1);

以下代码会产生此诊断信息,因为第二个 hide 组合子是冗余的

dart
import 'dart:math' hide Random, max, min hide min;

var x = pi;

以下代码会产生此诊断信息,因为 hide 组合子是冗余的

dart
import 'dart:math' show Random, max hide min;

var x = max(0, 1);
var r = Random();

以下代码会产生此诊断信息,因为 show 组合子已经隐藏了 Randommax,所以 hide 组合子是冗余的

dart
import 'dart:math' hide Random, max show min;

var x = min(0, 1);

常见修复方法

#

如果您倾向于列出应该可见的名称,请使用单个 show 组合子

dart
import 'dart:math' show min;

var x = min(0, 1);

如果您倾向于列出应该隐藏的名称,请使用单个 hide 组合子

dart
import 'dart:math' hide Random, max, min;

var x = pi;