Skip to content

noInvalidConstructorSuper (since v1.0.0)

Diagnostic Category: lint/correctness/noInvalidConstructorSuper

Sources:

Prevents the incorrect use of super() inside classes. It also checks whether a call super() is missing from classes that extends other constructors.

class A {
constructor() {
super();
}
}
correctness/noInvalidConstructorSuper.js:3:9 lint/correctness/noInvalidConstructorSuper ━━━━━━━━━━━━

   This class should not have a super() call. You should remove it.
  
    1 │ class A {
    2 │     constructor() {
  > 3 │         super();
           ^^^^^
    4 │     }
    5 │ }
  
class A extends undefined {
constructor() {
super();
}
}
correctness/noInvalidConstructorSuper.js:3:9 lint/correctness/noInvalidConstructorSuper ━━━━━━━━━━━━

   This class calls super(), but the class extends from a non-constructor.
  
    1 │ class A extends undefined {
    2 │     constructor() {
  > 3 │         super();
           ^^^^^
    4 │     }
    5 │ }
  
   This is where the non-constructor is used.
  
  > 1 │ class A extends undefined {
                   ^^^^^^^^^
    2 │     constructor() {
    3 │         super();
  
export default class A extends B {
constructor() {
super();
}
}
export class A {
constructor() {}
}