我有一个用户选择语言的页面。语言列表以模态显示。模态包含一组无线电复选框。用户选择语言并按完成以关闭模态。用户可以在同一过程中重新选择语言。
如果已经选择了一种语言,你可能会在加载模态时设置/选择/检查语言,但事实并非如此。
LanguageList.ts
export class LanguageListPage {
language: any;
languages: any;
isReadyToSave: boolean;
constructor(public navCtrl: NavController, public navParams: NavParams, public util: UtilProvider, public viewCtrl: ViewController) {
this.getLanguages();
if (this.navParams.get("language")) {
this.language = this.navParams.get("language");
console.log(this.language); // P.S it does return the correct value here
}
}
LanguageList.html
<ion-list radio-group [(ngModel)]="language" (ngModelChange)="setReadyState()">
<ion-item *ngFor="let language of languages">
<ion-label color="dark">{{language.name}}</ion-label>
<ion-note item-end>{{language.native}}</ion-note>
<ion-radio [value]="language"></ion-radio>
</ion-item>
</ion-list>
语言对象示例
{code: "JA", name: "Japanese", native: "日本語 (にほんご)"}
有人可以帮我修复它,以便当用户返回选择语言时,如果他们之前已经选择了一种语言,那么仍然会检查旧的选择。
this.navParams.get("language") // This is there old selection
如果它存在我将它设置为this.language但这似乎不起作用。