跳到主要内容

unnecessary_breaks

稳定
修复可用

在 break 是隐式的情况下,不要使用显式的 break

详情

#

仅在非空的 switch case 语句中需要提前跳出 case 主体时使用 break。Dart 不支持非空 case 的贯穿执行,因此在非空 switch case 语句末尾的 break 是不必要的。

错误示例

dart
switch (1) {
  case 1:
    print("one");
    break;
  case 2:
    print("two");
    break;
}

正确示例

dart
switch (1) {
  case 1:
    print("one");
  case 2:
    print("two");
}
dart
switch (1) {
  case 1:
  case 2:
    print("one or two");
}
dart
switch (1) {
  case 1:
    break;
  case 2:
    print("just two");
}

注意:此 lint 仅报告语言版本为 3.0 或更高版本的库中不必要的 break。在 Dart 2.19 及更低版本中,仍然需要显式的 break。

启用

#

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

analysis_options.yaml
yaml
linter:
  rules:
    - unnecessary_breaks

如果你使用的是 YAML 映射语法来配置 linter 规则,请在 linter > rules 下添加 unnecessary_breaks: true

analysis_options.yaml
yaml
linter:
  rules:
    unnecessary_breaks: true