Mein Hauptanliegen ist, dass $event
zeigen Fehler in dieser Zeile:
starClick($event) {
Parameter $ Ereignis implizit hat 'jeden' Typ
Ich frage mich auch - nach Angular2 Docs, was $event
tut ist das Ereignisobjekt erfasst, so lassen Sie mich dumme Frage stellen - warum wir es nicht $object
nennen? Weil es mich verwirren ziemlich viel, bis ich endlich, was geschieht hier realisiert ..
import { Component } from '@angular/core';
@Component({
moduleId: module.id,
selector: 'stars',
template: `
<span class="glyphicon glyphicon-star-empty" (click)= "starClick($event)"></span>
`
})
export class StarsComponent {
starClick($event) {
if($event.target.className == "glyphicon glyphicon-star-empty") {
$event.target.className = "glyphicon glyphicon-star";
}
else{
$event.target.className = "glyphicon glyphicon-star-empty";
}
}
}
'$ event' hat in Ihrem Fall MouseEvent-Typ, Sie können dies in Ihrer Methode hinzufügen, um eine Warnung zu vermeiden. – hiper2d
'$ event' wird von EventEmitter übergeben. Es wäre "$ object", wenn es ObjectEmitter wäre - aber das ist es nicht. – estus