禁止 super 之前使用 this
注意:此规则是
recommended
规则集的一部分。在
deno.json
中启用完整集合{ "lint": { "rules": { "tags": ["recommended"] } } }
使用 Deno CLI 启用完整集合
deno lint --rules-tags=recommended
通过将其添加到
deno.json
中的 include
或 exclude
数组,此规则可以明确地包含或排除在当前标签的规则集中。{ "lint": { "rules": { "include": ["no-this-before-super"], "exclude": ["no-this-before-super"] } } }
禁止在构造函数中调用 super()
之前使用 this
或 super
。
在派生类的构造函数中,在调用 super()
之前访问 this
或 super
会导致 ReferenceError
。为了防止这种情况,此 lint 规则会检查在构造函数中调用 super()
之前是否存在对 this
或 super
的访问。
无效示例
class A extends B {
constructor() {
this.foo = 0;
super();
}
}
class C extends D {
constructor() {
super.foo();
super();
}
}
有效示例
class A extends B {
constructor() {
super();
this.foo = 0;
}
}
class C extends D {
constructor() {
super();
super.foo();
}
}
class E {
constructor() {
this.foo = 0;
}
}