Détails
Angular : classe conditionnelle avec *ngClass
Quel est le problème avec mon code Angular ? J'obtiens :
Cannot read property 'remove' of undefined at BrowserDomAdapter.removeClass ...
HTML
<ol class="breadcrumb">
<li *ngClass="{active: step==='step1'}" (click)="step='step1; '">Step1</li>
<li *ngClass="{active: step==='step2'}" (click)="step='step2'">Step2</li>
<li *ngClass="{active: step==='step3'}" (click)="step='step3'">Step3</li>
</ol>
436
3
[ngClass]=...
au lieu de*ngClass
.*
est seulement pour la syntaxe raccourcie pour les directives structurelles où vous pouvez par exemple utiliserau lieu de la version équivalente plus longue
Voir aussi https://angular.io/docs/ts/latest/api/common/index/NgClass-directive.html
Voir aussi https://angular.io/docs/ts/latest/guide/template-syntax.html
Une autre solution serait d'utiliser
[class.active]
.Exemple :
Vous devriez utiliser quelque chose comme ça (
[ngClass]
au lieu de*ngClass
) :