跳到主要内容

unnecessary_constructor_name

稳定
推荐
可用修复

不必要的 .new 构造函数名称。

详情

#

优先使用默认的匿名构造函数而不是 .new

给定一个类 C,命名匿名构造函数 C.new 指的是与匿名 C 相同的构造函数。因此,它除了增加调用时的视觉干扰之外毫无作用,应该避免使用(除非用于标识构造函数 tear-off)。

dart
class A {
  A.new(); // LINT
}

var a = A.new(); // LINT

dart
class A {
  A.ok();
}

var a = A();
var aa = A.ok();
var makeA = A.new;

启用

#

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

analysis_options.yaml
yaml
linter:
  rules:
    - unnecessary_constructor_name

如果您使用 YAML 映射语法配置 linter 规则,请在 linter > rules 下添加 unnecessary_constructor_name: true

analysis_options.yaml
yaml
linter:
  rules:
    unnecessary_constructor_name: true