因此,我有一个带有3个静态值的离子选择器,我希望默认选择并显示第二个,这听起来不那么困难或很多问题吧?好吧,我试着像在official document上的示例一样,在ion-select选项附近(在下面的代码中显示)简单地添加了selected,但是由于某种原因,它绝对没有效果,并且仍然没有重新加载页面时显示。知道这里可能是什么问题吗?
<ion-item>
<ion-label>{{ "HOME.row_text" | translate }}</ion-label>
<ion-select [(ngModel)]="drive_option" (ionChange)="updateResult()">
<ion-select-option value=0.5>{{ "HOME.row_half" | translate }}</ion-select-option>
<ion-select-option value=1 selected>{{ "HOME.row_simple" | translate }}</ion-select-option>
<ion-select-option value=2>{{ "HOME.row_double" | translate }}</ion-select-option>
</ion-select>
</ion-item>
答案 0 :(得分:1)
模型值和dom值之间的匹配对类型敏感。
Vanilla dom属性始终是字符串,并且与数字drive_option
不匹配。试试:
<ion-select-option [value]="0.5">{{ "HOME.row_half" | translate }}</ion-select-option>
答案 1 :(得分:0)
这是因为selected
在您使用ngModel
时没有任何意义。
您需要在代码中设置drive_option = 1
,它将反映在用户界面中。
您可能也不需要(ionChange)
,因为任何更改都会自动更新drive_option
的值。
仔细阅读Angular文档以了解事物的工作方式会对您有所帮助。
一开始我也感到困惑(并且仍然很规律),但是Ionic不仅仅是使用Ionic,还需要一些时间来对Angular有所了解。
这个概念是,虽然您不是在构建传统形式,而是在构建数据模型,然后让角度的两种方式绑定该数据-这就是[()]
的意思。