目录

流程控制结构中的花括号

对所有流程控制结构使用花括号。

此规则自 Dart 2.0 起可用。

规则集:corerecommendedflutter

此规则有可用的快速修复

详细信息

#

对所有流程控制结构使用花括号。

这样做可以避免悬空 else 问题。

错误

dart
if (overflowChars != other.overflowChars)
  return overflowChars < other.overflowChars;

正确

dart
if (isWeekDay) {
  print('Bike to work!');
} else {
  print('Go dancing or read a book!');
}

这里有一个例外:一个没有 else 子句的 if 语句,整个 if 语句(包括条件和主体)可以放在一行中。在这种情况下,如果您愿意,可以省略花括号

正确

dart
if (arg == null) return defaultValue;

但是,如果主体换行到下一行,则使用花括号

正确

dart
if (overflowChars != other.overflowChars) {
  return overflowChars < other.overflowChars;
}

用法

#

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

analysis_options.yaml
yaml
linter:
  rules:
    - curly_braces_in_flow_control_structures