Вы можете попробовать добавить attr.disabled
вместо disabled
<input [attr.disabled]="disableUpload ? '' : null"/>
Или, если вы используете реактивные формы (я предлагаю вам это сделать), вы можете отключить егоиспользуя элемент управления формы.
ОБНОВЛЕНИЕ
Вы можете назначить метод для события click
при вводе файла, а затем проверить логическое значение для выполнения требуемой операции.
В компоненте:
fileDialogShouldOpen = false;
fileInputClick = (event) => {
// Open file dialog
if(this.fileDialogShouldOpen){
return true;
}
// Do not open file dialog
else{
event.preventDefault();
event.stopPropagation();
return false;
}
}
И в шаблоне:
<input type="file" (click)="fileInputClick($event)">
Рабочий пример можно найти в этом проекте stackblitz