При объявлении ngModel для группы радио, кажется, что он переопределяет выбор переключателя по умолчанию, назначенный [checked] = "true"
<!--Radio buttons for units-->
<ion-list-header style = "color: white">
Units
</ion-list-header>
<ion-list radio-group [(ngModel)] = "units">
<ion-item>
<ion-label>Metric</ion-label>
<ion-radio [checked] = "true" value= "metric"></ion-radio>
</ion-item>
<ion-item>
<ion-label>Imperial</ion-label>
<ion-radio value = "imperial"></ion-radio>
</ion-item>
</ion-list>
Поэтому по умолчанию нет отмеченной кнопки, когда группа кнопок находится в поле зрения.
Я попытался поместить ngModel в тег переключателя, тег ion-item, оба метода вызывают исключение:
Uncaught Error: Uncaught (в обещании): Ошибка: нет средства доступа к значению для элемент управления формы с неуказанным атрибутом имени _throwError@http://localhost:8100/build/vendor.js:27548:20
Любая информация приветствуется.
Поскольку вы привязываете группу переключателей к свойству units
, вам не нужно использовать атрибут checked
в своем шаблоне.
Чтобы выбрать один из вариантов по умолчанию, вам просто нужно присвоить значение этого параметра свойству units
:
private someFunction(): void {
// ...
this.units = 'metric';
}
<!--Radio buttons for units-->
<ion-list-header style = "color: white">
Units
</ion-list-header>
<ion-list radio-group [(ngModel)] = "units">
<ion-item>
<ion-label>Metric</ion-label>
<ion-radio value= "metric"></ion-radio>
</ion-item>
<ion-item>
<ion-label>Imperial</ion-label>
<ion-radio value = "imperial"></ion-radio>
</ion-item>
</ion-list>