跳到主要內容

avoid_double_and_int_checks

穩定

避免 doubleint 檢查。

詳細資訊

#

避免 檢查類型是否為 doubleint

當編譯成 JS 時,整數值會表示為浮點數。當使用 isis! 且類型為 intdouble 時,可能會導致一些非預期的行為。

錯誤範例

dart
f(num x) {
  if (x is double) {
    ...
  } else if (x is int) {
    ...
  }
}

正確範例

dart
f(dynamic x) {
  if (x is num) {
    ...
  } else {
    ...
  }
}

啟用

#

若要啟用 avoid_double_and_int_checks 規則,請在您的 analysis_options.yaml 檔案中的 linter > rules 下新增 avoid_double_and_int_checks

analysis_options.yaml
yaml
linter:
  rules:
    - avoid_double_and_int_checks

如果您改為使用 YAML map 語法來設定 linter 規則,請在 linter > rules 下新增 avoid_double_and_int_checks: true

analysis_options.yaml
yaml
linter:
  rules:
    avoid_double_and_int_checks: true