Spec-Zone.ru › ESLint

no-useless-constructor

Запретить ненужные конструкторы

💡 hasSuggestions

Некоторые проблемы, выявленные этой правилом, могут быть вручную исправлены с помощью предложений редактора.

ES2015 предоставляет по умолчанию конструктор класса, если он не указан. Поэтому необязательно указывать пустой конструктор или конструктор, просто делегирующий в родительский класс, как в следующих примерах:

class A {
    constructor () {
    }
}

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

Подробное описание правила

Это правило отмечает конструкторы классов, которые можно безопасно удалить, не изменяя работу класса.

Примеры

Примеры неправильного кода для этого правила:

Открыть в Playground
/*eslint no-useless-constructor: "error"*/

class A {
    constructor(){}
}

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

Примеры правильного кода для этого правила:

Открыть в Playground
/*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.

Ресурсы

  • Исходный код правила
  • Исходный код тестов

© OpenJS Foundation and other contributors
Licensed under the MIT License.
https://eslint.org/docs/latest/rules/no-useless-constructor

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API