Je souhaite créer un composant dans l'angle 2 qui prendra quelques paramètres d'entrée. Je suis un peu confus quant à l'utilisation de la classe ou de l'interface pour la saisie et pourquoi? composant suivant, je l'ai utilisé l'interfaceUtilisation de la classe ou de l'interface pour saisir des données dans le composant dactylographié
import { Component, Input, Output, EventEmitter } from "@angular/core";
@Component({
moduleId: module.id,
selector: 'combo-compo',
template: `
<select name="theme" class="form-control" [ngModel]="selectedObject" (ngModelChange)="onChangeObj($event)">
<option [ngValue]="theme" *ngFor="let theme of dataObject" >{{theme.value}}</option>
</select>
`
})
export class ComboComponent {
selectedObject: ComboInterface;
@Input() dataObject: Array<ComboInterface>;
@Output() onComboChange = new EventEmitter();
onChangeObj(newObj: ComboInterface) {
this.selectedObject = newObj;
this.onComboChange.emit(this.selectedObject);
}
}
interface ComboInterface {
key: string;
value: string;
}
Dans le cas de '@ Input', je pense qu'il est plus pratique d'utiliser' interface' plutôt que 'class' – Abrar