Skip to main content

prefer_conditional_assignment

Learn about the prefer_conditional_assignment linter rule.

Stable
Recommended
Fix available

Prefer using ??= over testing for null.

Details

#

PREFER using ??= over testing for null.

As Dart has the ??= operator, it is advisable to use it where applicable to improve the brevity of your code.

BAD:

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

GOOD:

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

Enable

#

To enable the prefer_conditional_assignment rule, add prefer_conditional_assignment under linter > rules in your analysis_options.yaml file:

analysis_options.yaml
yaml
linter:  rules:  - prefer_conditional_assignment 

If you're instead using the YAML map syntax to configure linter rules, add prefer_conditional_assignment: true under linter > rules:

analysis_options.yaml
yaml
linter:  rules:  prefer_conditional_assignment: true