跳到主內容

unnecessary_type_check

不必要的型別檢查;結果始終為 'false'。

不必要的型別檢查;結果始終為 'true'。

描述

#

當型別檢查(使用 isis!)的值在編譯時已知時,分析器會生成此診斷資訊。

示例

#

以下程式碼會生成此診斷資訊,因為測試 a is Object? 始終為 true

dart
bool f<T>(T a) => a is Object?;

常見修復方法

#

如果型別檢查未能實現你預期的檢查,請更改測試條件

dart
bool f<T>(T a) => a is Object;

如果型別檢查確實實現了你預期的檢查,請用其已知的值替換型別檢查,或者完全將其移除

dart
bool f<T>(T a) => true;