You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Dart中不可能的相等性检查警告转为错误?

如何将Dart的unrelated_type_equality_checks警告转为错误?

Dart内置的unrelated_type_equality_checks lint规则可以检测无关类型之间的相等性判断(比如字符串和布尔值比较),但默认只会触发警告,在大型项目中很容易被忽略,就像你提供的示例代码那样:

void giveAccessToEverything() {
  /// 核弹权限
}
void main () {
  final isAdmin = "isAdmin"; // 迁移2.0时数据库团队改成了枚举,但这里漏改了

  if (isAdmin != true) { // 没人注意到这个问题,锅得Dart背
    return;
  }
  giveAccessToEverything();
}

要把这个警告升级为错误,强制开发者必须修复,只需修改项目的analysis_options.yaml配置文件:

  1. 打开项目根目录下的analysis_options.yaml(如果没有就新建一个)
  2. 在linter的rules节点下,将unrelated_type_equality_checks的级别设置为error:
linter:
  rules:
    - unrelated_type_equality_checks: error

配置完成后,Dart分析器会把所有无关类型相等性判断的情况直接标记为编译错误,而不是警告,确保这类潜在的严重bug不会被遗漏。

内容的提问来源于stack exchange,提问作者TSR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 06:40:56