Вам нужно создать экземпляр элемента управления формы внутри вашей группы форм, чтобы хранить ссылку на файл. Например:
this.form = this.fb.group({
summary: new FormControl('', [Validators.required]),
description: new FormControl('', [Validators.required]),
isurgent: [false],
file: []
});
И затем при назначении файла:
handleFileInput(files: FileList) {
this.form.patchValue({ file: files.item(0) });
}
Кроме того, предложение переместить создание группы форм в ngOnInit()
действует, но не решит Ваша конкретная проблема.
В настоящее время, когда вы создаете экземпляр формы, вы смешиваете конструктор форм (fb
) и создаете экземпляры формы, которые вы сами контролируете. Внутри вызова fb.group({
такие значения, как []
, являются сокращением для создания нового элемента управления формы. Таким образом, чтобы последовательно использовать построитель форм, измените экземпляры summary
и description
на:
summary: ['', [Validators.required]],
description: ['', [Validators.required]],