我正在使用<ion-select>
作为下拉列表,它按预期工作,但我在这里想要的是<ion-select>
中所选选项的索引
我使用了<ion-select>
和更改事件,如下所示:
<ion-select class="myCustomSelect" [(ngModel)]="selectedProductDD" interface="popover" (ionChange)="onSelectChange($event)">
<ion-option *ngFor="let selectedProduct of productArray" [value] = selectedProduct.pid>{{ selectedProduct.pid }} </ion-option>
</ion-select>
变更事件 :
onSelectChange(selectedValue: any) {
//Here I want Index also.
//Currently I am getting selected Value.
}
让我知道是否有人可以帮助我!
提前谢谢。
在*ngFor
中,您还可以定义一个变量来接收 que 索引
<ion-select class="myCustomSelect" [(ngModel)]="selectedProductDD" interface="popover" (ionChange)="onSelectChange($event)">
<!-- you can also have your index by declaring a variable in ngFor that'll receive the index -->
<ion-option *ngFor="let selectedProduct of productArray; let i = index" [value] = selectedProduct.pid>{{ selectedProduct.pid }} </ion-option>
</ion-select>
这里的情况是,您声明的索引位于ion-select
内,因此它不适用于onSelectChange
方法。因此,在您的 .TS 文件
public myIndex: number = 0;
每次用户选择一个选项时,属性都会收到索引
<!-- on selecting an option your myIndex will receive the current selected option index -->
<ion-option *ngFor="let selectedProduct of productArray; let i = index" [value]=selectedProduct.pid (ionSelect)="myIndex = i">{{ selectedProduct.pid }}</ion-option>
然后你可以在你的onSelectChange()
中使用它
onSelectChange(selectedValue: any) {
let index = this.myIndex;
}
还有另一种选择,但这是最有角度的方式。希望这有帮助。