In my TSLint file, I have:
"no-unused-variable": true
In my components, I sometimes have:
// tslint:disable-next-line:no-unused-variable
@HostBinding('class') private classes = 'my-theme';
Because classes is private, TSLint complains, so I have to disable TSLint everytime.
I do not want to make @HostBinding public because of encapsulation.
What is the recommended way to solve this problem?
After some research, the solution is to simply make it
publicThis is because from Angular's perspective, it accesses the component, something like
component.classes. Therefore, semantically, it is public. It's the same reason why@Inputshould be public even if you don't use it in the template.Sources:
https://stackoverflow.com/a/38469573/3481582