跳到主內容

prefer_iterable_wheretype

使用 'whereType' 選擇給定型別的元素。

描述

#

當使用方法 Iterable.where 根據元素型別進行過濾時,分析器會生成此診斷資訊。

示例

#

以下程式碼會生成此診斷資訊,因為方法 where 用於僅訪問可迭代物件中的字串。

dart
Iterable<Object> f(Iterable<Object> p) => p.where((e) => e is String);

常見修復方法

#

重寫程式碼以使用 whereType

dart
Iterable<String> f(Iterable<Object> p) => p.whereType<String>();

這還可能允許您收緊程式碼中的型別或刪除其他型別檢查。