跳到主要内容

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