Hier ist mein Eckige 2 App:Angular 2 - Ändern CSS-Selektor auf Klick
//root app component
import {Component, NgModule} from '@angular/core'
import {BrowserModule} from '@angular/platform-browser'
@Component({
selector: 'my-app',
template: `
<div>
<h2>Hello {{name}}</h2>
<div class="{{item.itemclass}}" id="lists" *ngFor="let item of items">
<div class="item" (click)="selectItem(item)">{{item}}</div>
<div>{{item.itemclass}}</div>
</div>
</div>
`,
})
export class App {
name:string;
items: any[];
itemclass : string;
constructor() {
this.name = 'Angular2';
this.items = [
'lorem',
'ipsum',
'sit',
'trump :D'
];
this.itemclass = '';
}
selectItem(item){
console.log(item);
item.itemclass = "active";
}
}
@NgModule({
imports: [ BrowserModule ],
declarations: [ App ],
bootstrap: [ App ]
})
export class AppModule {}
Wenn das Click-Ereignis selectItem
ausgelöst wird, soll sie die itemclass
ändern. Es passiert jedoch nichts.
Finden Sie meine App unter Plunker.
Alles, was ich erreichen will ist: wenn ein Benutzer auf ein Element klickt wäre es ein active
CSS-Selektor haben, und wenn ein anderes Element geklickt wird, wäre es einfach zu wechseln und alle Geschwister wird nicht die active
CSS-Klasse mehr .
Aber es funktioniert nicht richtig. Wie macht man das in Angular 2?