当键盘在模态关闭按钮中打开时不起作用(Ionic 5)

When keyboard is open in modal dismiss button does not work (Ionic 5)

该问题仅发生在 iOS 设备上。我在模式中有一个 ion-textarea,里面有一个按钮,它执行的唯一操作是

dismissModal() { this.modalController.dismiss(); }

问题是当我点击它时,只有键盘被隐藏,我必须再次点击它才能执行模态窗口的关闭。我怎样才能避免这种行为?

我的解决方案:

在HTML中:

    <ion-button
      (mousedown)="dismissModal(); questionTextarea.setFocus()"
      *ngIf="platform.is('ios')"
    >
      <ion-icon name="close" slot="icon-only"></ion-icon>
    </ion-button>
    <ion-button
      (mousedown)="dismissModal()"
      *ngIf="!platform.is('ios')"
    >
      <ion-icon name="close" slot="icon-only"></ion-icon>
    </ion-button>

这种方式只对iOS台设备强制不关闭键盘

并且在 component.ts 中:

 dismissModal() {
    if (this.platform.is('ios')) {
      Keyboard.hide();
      this.modalController.dismiss();
    } else {
      this.modalController.dismiss();
    }
  }

这样,直到调用dismiss函数,才会执行键盘关闭事件。我正在使用插件 @capacitor/keyboard