版本

no-useless-constructor

禁用不必要的建構子

💡 hasSuggestions

此規則回報的一些問題可以透過編輯器的建議手動修正

如果沒有指定,ES2015 會提供一個預設的類別建構子。因此,提供一個空的建構子,或者一個只是委派給其父類別的建構子是不必要的,如下列範例所示

class A {
    constructor () {
    }
}

class B extends A {
    constructor (value) {
      super(value);
    }
}

規則詳情

此規則標示可以安全移除而不會改變類別運作方式的類別建構子。

範例

此規則的錯誤程式碼範例

在線上編輯器中開啟
/*eslint no-useless-constructor: "error"*/

class A {
    constructor () {
    }
}

class B extends A {
    constructor (...args) {
      super(...args);
    }
}

此規則的正確程式碼範例

在線上編輯器中開啟
/*eslint no-useless-constructor: "error"*/

class A { }

class B {
    constructor () {
        doSomething();
    }
}

class C extends A {
    constructor() {
        super('foo');
    }
}

class D extends A {
    constructor() {
        super();
        doSomething();
    }
}

何時不使用它

如果您不想收到關於不必要建構子的通知,您可以安全地禁用此規則。

版本

此規則在 ESLint v2.0.0-beta.1 中引入。

資源

變更語言