Я не знаю, почему код для получения переменной «answoord» находится за пределами вашего компонента, но в любом случае давайте быстро очистим ваш код:
export interface PtpItem {
leeftijd: string;
ptp: number;
geslacht: string;
score: number;
}
export type PtpList = PtpItem[];
export class AppCadComponent implements OnInit {
ptpForm: FormGroup;
ptp: number = 0;
ptp_list: PtpList = [
{"leeftijd":"30-39", ptp:0, "geslacht":"man", "score":1},
{"leeftijd":"30-39", ptp:1, "geslacht":"vrouw", "score":2},
{"leeftijd":"40-49", ptp:2, "geslacht":"man", "score":3},
{"leeftijd":"40-49", ptp:3, "geslacht":"vrouw", "score":4}
]
answer: {};
constructor(private fb: FormBuilder) { }
ngOnInit(): void {
this.ptpForm = this.fb.group ({
ptp_age: new FormControl(''),
ptp_geslacht: new FormControl('')
});
// maybe this.ptp should be there ? To be confirmed
this.ptp = 1;
}
getAntWoord(formValue: any): PtpList {
if (!this.ptp || !formValue) {
return []; // We don't want to filter if this.ptp is not initialized or formGroup is null
}
return this.ptp_list.filter((item: PtpItem) => item.leeftijd === formValue.ptp_age && item.geslacht === formValue.ptp_geslacht && item.ptp === this.ptp);
}
}
Я не знаю, как вы фактически определите свою переменную члена ответа, но вы можете использовать функцию getAntWoord, передав formValue в param.