В моем приложении angular7 я отключаю поле ввода текста (выбор даты) на основе переменной флага, но когда моя форма визуализировала его отключение автоматически, даже мой флаг ложный.
HTML:
<input type="text"
[placeholder]="placeholderDateText"
[(ngModel)]="DepartureTime"
#DepartureTime="ngModel"
name="DepartureTime"
ngModel [owlDateTime]="DepartureDateTime"
[min]="minDate"
(keyup.tab)="DepartureDateTime.open()"
(click)="DepartureDateTime.open()"
[disabled]="disableDepartTime"
(ngModelChange)="emitDepartTime()"
[required]="requirrDepartTime" />
<span (click)="DepartureDateTime.open()">
<i class="icon icon-Calendar"></i>
</span>
<owl-date-time #DepartureDateTime [hour12Timer]="hour12Timer"
[startAt]="DepartureTime || startAt" [panelClass]="'owldtcalpanel'">
</owl-date-time>
После рендеринга в браузере:
<input _ngcontent-c17="" name="DepartureTime" ngmodel="" type="text" ng-reflect-required="false" ng-reflect-owl-date-time="[object Object]" ng-reflect-min="Wed Mar 15 1978 20:30:00 GMT+0" ng-reflect-name="DepartureTime" placeholder="MM/DD/YYYY HH:MM" aria-haspopup="true" min="1978-03-15T20:30:00+05:30" class="ng-pristine ng-touched" disabled="">
Вы можете заметить, что disabled = "" добавлено, даже если мой флаг был ложным.
Я пробовал использовать также disabled = "{{disableDepartTime? DisableDepartTime: undefined}}" или [attr.disabled] = "disableDepartTime"
Пожалуйста, дайте мне знать, в чем может быть причина и какое альтернативное решение по этому вопросу.