我有一个数组,我用它来显示
<ion-item (click)="toggleLanguages()">
Languages
<ion-icon name="add" item-right *ngIf="languageShow"></ion-icon>
<ion-icon name="remove" item-right *ngIf="languageHide"></ion-icon>
</ion-item>
<div *ngIf="languageHide">
<!-- All radio's in a radio group -->
<ion-list radio-group [(ngModel)]="selectedLanguage" (ionChange)="doSomething(language)">
<ion-item *ngFor="let language of languageArray">
<ion-label >{{language.language_name}}</ion-label>
<ion-radio item-left [value]="language"></ion-radio>
</ion-item>
</ion-list>
</div>
如您所见,我正在使用ionchange
调用函数
问题:
当我的
languageHide
变量变为真时,我的doSomething
功能就会触发我将
language
对象作为参数发送给我的doSomething(language)
函数,但在我的控制台日志中,我的语言对象未定义。
这是我的 .ts 文件
doSomething(languages){
console.log("invoking dosomething");
console.log("checking languages "+ JSON.stringify(languages));//here it is not printing
}
toggleLanguages(){
console.log("invoking toggleLanguages");
this.languageShow = !this.languageShow;
this.languageHide = !this.languageHide;
}
从上面的两个函数中,我首先调用 toggleLanguages() 函数,一旦我调用了这个函数,我的 this.languageHide 变量变为 true,然后我的 (ionChange) 函数会自动触发。