С обычными html меню выбора, если вы создаете элемент опции с атрибутами selected
и disabled
и даете текст этой опции, тогда этот текст будет отображаться в меню выбора по умолчанию. Вот основы c html:
<select name="myname">
<option selected disabled>Select one...</option>
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>
Вот как выглядят страницы:
![enter image description here](https://i.stack.imgur.com/gSyHg.png)
Но в ниже изолированного кода я демонстрирую, что Angular навязчиво не показывает текст опции:
https://github.com/lovefamilychildrenhappiness/DropDownNoShowDefaultValue
// app.component.html
<h1>Select Box does not show default value: </h1>
<app-select-box
[options]="collection"
></app-select-box>
// select-box.component.html
<select
[value]="value"
[disabled]="disabled">
<option selected disabled value="">Select one...</option>
<option *ngFor="let option of options">{{option}}</option>
</select>
![enter image description here](https://i.stack.imgur.com/TW6hr.png)
Что заставляет Angular нарушать собственное поведение html полей выбора?