目录

no_leading_underscores_for_local_identifiers

避免在本地标识符中使用前导下划线。

此规则自 Dart 2.16 起可用。

规则集:推荐flutter

此规则有可用的快速修复

详情

#

不要 对非私有标识符使用前导下划线。Dart 使用标识符中的前导下划线来将成员和顶层声明标记为私有。这会训练用户将前导下划线与这些类型的声明之一相关联。他们看到 _ 就会认为是“私有”。本地变量或参数没有“私有”的概念。当其中一个名称以以下划线开头时,会向读者发送令人困惑的信号。为了避免这种情况,请不要在这些名称中使用前导下划线。

例外: 未使用的参数可以命名为 ______ 等。这在回调中很常见,在回调中,你会被传递一个值,但你不需要使用它。给它一个仅由下划线组成的名称是表示该值未被使用的惯用方式。

错误

dart
void print(String _name) {
  var _size = _name.length;
  ...
}

正确

dart
void print(String name) {
  var size = name.length;
  ...
}

可以

dart
[1,2,3].map((_) => print('Hello'));

用法

#

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

analysis_options.yaml
yaml
linter:
  rules:
    - no_leading_underscores_for_local_identifiers