Из этой строки и как работает ключевое слово this
:
if (!this.allowedValuesArray.indexOf(control.value)) {
return {'nameIsForbidden': true};
}
Вы не выполняете метод (или функцию) самостоятельно, вы просто позволяете Angular выполнить его и проверить поле. Поскольку вы позволяете сделать это для Angular, this
больше не ссылается на AppComponent
. Что вам нужно сделать, это .bind
AppComponent
, чтобы функционировать, или, я полагаю, заменить его на функции в виде стрелок, подобные этой:
fun = (formControl: FormControl) => null