`Fehler: Ausgabe ist nicht definiert` beim Übergeben eines Wertes außerhalb einer Direktive an die übergeordnete Direktive

Ich habe eine Root-App-Komponente, die in der Vorlage so definiert ist.

template: `
<dev-table (complete)="onSelect(developer)"></dev-table>
<dev-details [selectedDeveloper]="selectedDeveloper"></dev-details>
`
directives: [DevDetailsComponent, DevTableComponent],
providers: [DevValueService, provide(DevService, {useClass: DevService})]

ist eine Liste und sollte bei Auswahl einer der internen Listen den Wert der Liste (Entwickler) senden, die als ausgewählter Entwickler übergeben wird. @Input ist richtig definiert und wird richtig berücksichtigt. Aber der @output ist, einen Fehler zu gebenError: Output is not defined Welche Definition wird benötigt oder wie lautet die Definitionsmethode? Mir fehlt etwas.

Dies ist die Klassendefinition:

@Component({
  selector: 'dev-table',
  template: `
    <ul class="dev">
      <li *ngFor="#developer of developers"
        [class.selected]="developer === selectedDeveloper;this.complete.next();"
        (click)="onSelect(developer)">
        <span class="spanbackground">{{developer.name}}</span> -  {{developer.skill}}
      </li>
    </ul>  
  `, 
  providers: [DevService]
})

export class DevTableComponent implements OnInit{
    public developers : Developer[];
    public selectedDeveloper : Developer;
    constructor(private _DevService: DevService) { }
    @Output() complete = new EventEmitter(); 
    public onSelect(developer: Developer) { this.selectedDeveloper = developer; }
    getDevelopers(){
      this._DevService.getDevelopers().then(developers => this.developers = developers)
    }
    ngOnInit(){
      this.getDevelopers();
    }
}

AKTUALISIERT Der endgültige Arbeitscode hatte nichtdeveloper === selectedDeveloper;this.complete.next(); lieberthis.complete.next() wurde in die Funktion onSelect aufgenommen.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage