目录

unnecessary_parenthesis

可以删除不必要的括号。

此规则从 Dart 2.0 开始可用。

此规则有可用的快速修复

详情

#

避免在不需要时使用括号。

错误示例

dart
a = (b);

正确示例

dart
a = b;

如果括号不改变代码的含义,并且不提高代码的可读性,则认为它们是不必要的。目标不是强制所有开发人员将表达式优先级表记在脑子里,这就是为什么包含第二个条件。此条件的示例包括

  • 级联表达式 - 有时并不清楚级联表达式的目标是什么,尤其是在赋值或嵌套级联中。例如,表达式 a.b = (c..d)
  • 标记之间有空格的表达式 - 看到像 !await foo 这样的表达式可能会很奇怪,它是有效的,并且等同于 !(await foo)
  • 逻辑表达式 - 括号可以提高由优先级定义的隐式分组的可读性。例如,表达式 (a && b) || c && d

用法

#

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

analysis_options.yaml
yaml
linter:
  rules:
    - unnecessary_parenthesis