跳到主要内容

always_put_control_body_on_new_line

稳定
可修复

将控制结构表达式与其语句分开。

详情

#

来自 flutter 代码库的风格指南

请务必 将控制结构表达式与其语句分开。

不要将 ifforwhiledo 语句的主体部分与表达式放在同一行,即使它很短。这样做会使人看不清楚那里有相关的代码。这对于提前返回尤其重要。

BAD

dart
if (notReady) return;

if (notReady)
  return;
else print('ok')

while (condition) i += 1;

GOOD

dart
if (notReady)
  return;

if (notReady)
  return;
else
  print('ok')

while (condition)
  i += 1;

请注意,此规则可能与 Dart 格式化工具 冲突,因此在使用 Dart 格式化工具时,不应启用此规则。

启用

#

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

analysis_options.yaml
yaml
linter:
  rules:
    - always_put_control_body_on_new_line

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

analysis_options.yaml
yaml
linter:
  rules:
    always_put_control_body_on_new_line: true