跳到主內容

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;