跳到主要内容

cast_nullable_to_non_nullable

稳定
可修复

不要将可空值强制转换为非空类型。

详情

#

不要将可空值强制转换为非空类型。这隐藏了空检查,而且在大多数情况下并非预期行为。

错误示例

dart
class A {}
class B extends A {}

A? a;
var v = a as B;
var v = a as A;

正确示例

dart
class A {}
class B extends A {}

A? a;
var v = a! as B;
var v = a!;

启用

#

要启用 cast_nullable_to_non_nullable 规则,请在您的 analysis_options.yaml 文件中的 linter > rules 下添加 cast_nullable_to_non_nullable

analysis_options.yaml
yaml
linter:
  rules:
    - cast_nullable_to_non_nullable

如果您使用 YAML 映射语法配置 linter 规则,请在 linter > rules 下添加 cast_nullable_to_non_nullable: true

analysis_options.yaml
yaml
linter:
  rules:
    cast_nullable_to_non_nullable: true