跳到主要内容

prefer_conditional_assignment

稳定
推荐
可修复

优先使用 ??= 运算符,而非判断是否为 null

详情

#

优先使用 ??= 运算符,而非判断是否为 null

因为 Dart 支持 ??= 运算符,建议在适用的地方使用它,以简化代码。

不好

dart
String get fullName {
  if (_fullName == null) {
    _fullName = getFullUserName(this);
  }
  return _fullName;
}

dart
String get fullName {
  return _fullName ??= getFullUserName(this);
}

启用

#

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

analysis_options.yaml
yaml
linter:
  rules:
    - prefer_conditional_assignment

如果您使用的是 YAML map 语法配置 Linter 规则,请在 linter > rules 下添加 prefer_conditional_assignment: true

analysis_options.yaml
yaml
linter:
  rules:
    prefer_conditional_assignment: true