no-dupe-class-members

禁止重复的类成员

配置文件 中的 "extends": "eslint:recommended" 属性启用了该规则

如果类成员中有同名的声明,最后一个声明会默默地覆盖其他声明。它可能会导致意外行为。

/*eslint-env es6*/

class Foo {
  bar() { console.log("hello"); }
  bar() { console.log("goodbye"); }
}

var foo = new Foo();
foo.bar(); // goodbye

规则详情

该规则旨在标记类成员中重复名称的使用。

示例

此规则的错误代码示例:

/*eslint no-dupe-class-members: "error"*/

class Foo {
  bar() { }
  bar() { }
}

class Foo {
  bar() { }
  get bar() { }
}

class Foo {
  bar;
  bar;
}

class Foo {
  bar;
  bar() { }
}

class Foo {
  static bar() { }
  static bar() { }
}

h+1Jf/rEEE6yYiKhWnK/aHl9/UYIfowckm44qhmqvwwaWj0QX+JXnab7YJgxSmDw

/*eslint no-dupe-class-members: "error"*/

class Foo {
  bar() { }
  qux() { }
}

class Foo {
  get bar() { }
  set bar(value) { }
}

class Foo {
  bar;
  qux;
}

class Foo {
  bar;
  qux() { }
}

class Foo {
  static bar() { }
  bar() { }
}

何时不使用

X0uMLgzsGgGRPBn5k4JMg+UOia0Dhgw3Q8IU8kgP6HxC6BRi6KLqKYOd/3HRsRFG

Zuk9q91Aqc7HEuuazoD0MdtcpqyBXqlBrX0ta3lRv1Pilkb1wx+tuZHciOQ6b0qy/dXmaBLroN2OivDMk0WJBEwsAz97OyqLwLwtl3gPLce0N5a21q5CQGjhwypwehiBKGt3l3u0ejTsPa7kf1x7/MlOd2+DHkjV9RvUjtqFL7awU4pCFjBG70yy9jrPJgFy

1IOy4mkreuoiPk0QkE/XaJO17Ab/dVZ2lfd90ARg9/94KrWLMAv8pTMLzRTQK69ZYGvKPQyGJ6VFiKj5OFmVSP9xp/1zzcllLjlzDmPeJuvgDJNXcs1Y2ARDkuethsLm2IF6aEAaRp5fPjPzHhKyiBXvSOFm5iX2CZufCg6DIFw=