Появляется директива ngModel
, которая изменяет поведение привязки свойства disabled
. Элемент ввода отключается, когда применяется ngModel
и disabled
привязывается к пустой строке:
<input type="text" [disabled]="''" /> // Enabled
<input type="text" ngModel [disabled]="''" /> // Disabled <== unexpected!!!
<input type="text" ngModel [disabled]="" /> // Enabled
<input type="text" ngModel [disabled]="undefined" /> // Enabled
<input type="text" ngModel disabled /> // Disabled
Поэтому, если emptyString
- пустая строка, следующий элемент управления будет отключен:
<input type="text" [(ngModel)]="value" [disabled]="emptyString" /> // Disabled
Вы можете получить ожидаемое поведение, преобразовав строку в логическое значение с помощью !!
:
<input type="text" [(ngModel)]="value" [disabled]="!!emptyString" /> // Enabled
Такое поведение можно наблюдать в this stackblitz :