Я не понимаю, почему мое значение интервью.InterviewID не определено в моей таблице:
<table class="table table-striped table-interviews">
<tbody>
<tr *ngIf="listInterview && listInterview.length !== 0">
<th>InterviewID</th>
</tr>
<tr *ngFor="let interview of listInterview">
<td>
<input type="text" name="commentaire" id="interviewID" class="form-control" [(ngModel)]="interview.InterviewID">
</td>
</tbody>
</table>
Он вызывается в родительском компоненте так:
<div *ngIf="personnelSelected" class="modal modal-default fade" id="modal-interviews">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<h4 class="modal-title">
<i class="fa fa-pencil"></i>
Individual Interviews
</h4>
</div>
<app-interviews [personnel]="personnelSelected"></app-interviews>
</div>
</div>
</div>
, где staffSelectedполучает значение из метода OnSelect в этом родительском компоненте.Вот как работает компонент интервью:
@Component({
selector: 'app-entretiens',
templateUrl: './entretiens.component.html',
providers: [ EntretiensService ]
})
export class EntretiensComponent implements OnChanges{
@Input() personnel: PersonnelInfo;
listInterview: Interview[];
ngOnChanges() {
this.interviewService.get({where: 'personnelInterviewedID=' + this.personnel.id})
.subscribe((interviews: Interview[]) => {
this.listInterview = Interviews;
});
}
}
Функция интервьюService.get вызывает API с условием where.Но это не проблема.Я думаю, что есть проблема с тем, как я использую метод OnChanges, но я пока не понимаю этого.Не могли бы вы просветить меня?