I have the following template :
While this is working, I find it a bit ugl
Indeed
<p class="{{condition ? 'checked' : 'unchecked'}}">
or
<p [ngClass]="condition ? 'checked' : 'unchecked'">
or
<p [ngClass]="[condition ? 'checked' : 'unchecked']">
But you should know that there's a difference in how different types of class bindings behave, especially when there are multiple types of class bindings on the same element.
And the new compiler, Ivy, brings more clarity and predictability to it. Read More about it here