Как отключить правило tslint для руководства по стилю Angular: "Селектор должен начинаться с префикса <prefix>"?
У меня есть угловой тест для некоторого компонента, который использует директиву ngb-pagination
из нг-бутстрапа.
Теперь в моем тесте я смоделировал этот компонент следующим образом:
// on next line I get: The selector should be prefixed by "<prefix>" (https://angular.io/guide/styleguide#style-02-07) (component-selector)
@Component({ template: ``, selector: 'ngb-pagination' })
class DummyNgPagination {
// some data here, not relevant in to the question
}
В строке, где он находится @Component
аннотация Я получаю ошибку tslint, указывающую на стиль 02-07.
Я попытался отключить правило, выполнив следующее, но результат тот же.
// tslint:disable-next-line:directive-selector
@Component({ template: ``, selector: 'ngb-pagination' })
Как я могу отключить это правило для этой конкретной строки?
PS:
- Вот настоящий угловой проект на тот случай, если вы захотите проверить любую конфигурацию ресурса.
- Есть похожий вопрос ( кебаб-кейс в угловых 2 селекторах (tslint)), но ОП просто решил с этим смириться.
3 ответа
Правило directive-selector
работает на @Directive
декоратор.
Для @Component
вам нужно использовать component-selector
Например:
// tslint:disable-next-line:component-selector
@Component({ template: ``, selector: 'ngb-pagination' })
Вы можете установить это внутри вашего angular.json
файл внутри scematics
запись вроде так:
Вы можете установить его как для компонентов, так и для директив
"schematics": {
"@schematics/angular:component": {
"prefix": ""
},
"@schematics/angular:directive": {
"prefix": ""
}
}
И если вы используете командную строку и не генерируете компоненты / директивы часто, вы можете сделать это с помощью командной строки следующим образом:
ng generate component my-component --prefix ""