javascript - 无法在 ionic 3 上设置 ionic 选择的默认值

标签 javascript angular ionic-framework ionic3

我已阅读并尝试了平台上所有相关问题,但找不到解决方案。

问题就在这里;有一个 groupmembers 数组,其中包含登录用户(不是多个)。我希望默认选择的选项是他。但我做不到。

这是我的 html;

  <ion-item>
      <ion-label>Payer:</ion-label>
      <ion-select [(ngModel)]="payerInfo" cancelText="Vazgeç" okText="Tamam">
        <ion-option *ngFor="let member of groupMembersArray; let i = index" [value]="{payeruid: member.$key, payername: member.fullName, payerusername: member.username}" selected="member.$key==myUid">{{member.fullName}}</ion-option>
      </ion-select>
    </ion-item>

这里是.ts相关代码;

payerInfo: any;

我什至在构造函数中定义了 payerInfo 和 myuid;

    this.myUid = this.afAuth.auth.currentUser.uid;

this.afDatabase.object(`users/${this.myUid}/profile`).subscribe(data => {
  this.payerInfo = {payeruid: this.myUid, payername: data.fullName, payerusername: data.username};
}); 

console.log(this.payerInfo)

控制台打印成功地为我提供了登录用户的数据,其形式与 ngModel payerInfo 完全相同。那么为什么它没有默认选择呢?感谢您的阅读,请帮助我

最佳答案

按照说明尝试使用 compareWith here 。与此示例类似:

<ion-item>
  <ion-label>Employee</ion-label>
  <ion-select [(ngModel)]="employee" [compareWith]="compareFn">
    <ion-option *ngFor="let employee of employees" [value]="employee"></ion-option>
  </ion-select>
</ion-item>


compareFn(e1: Employee, e2: Employee): boolean {
  return e1 && e2 ? e1.id === e2.id : e1 === e2;
}

关于javascript - 无法在 ionic 3 上设置 ionic 选择的默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47823942/

相关文章:

angular - 在 embeddedView 中访问容器组件的 FormGroupDirective

html - 更改 ionic 弹出窗口的宽度

html - 列表中的 ionic 元素不是全宽

javascript - jquery - slideToggle 不流畅

javascript - javascript/vb "new ActiveXObject()"中使用的对象的技术名称是什么?

angular - 去除@HostListener 事件

javascript - 如何在没有按钮的情况下访问浏览器? ( ionic 3)

javascript - chrome 中的 webkitdirectory 文件选择限制

Javascript 运算符无法将整数与零进行比较(例如 10、100、1000 等)?

Angular - 使用来自另一个模块的组件