PopoverController Ionic 4?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PopoverController Ionic 4?相关的知识,希望对你有一定的参考价值。

PopoverController如何在Ionic 4中运行?

目前的文档是不正确的,并没有发生重大变化?

const popover = this.popoverCtrl.create({
  component: 'PopupMenuComponent',
  ev: event
});

popover.present();

我创建了一个Component,当我尝试呈现它时,我收到以下错误...

[ts] Property 'present' does not exist on type 'Promise<htmlIonPopoverElement>'. Did you forget to use 'await'?

谢谢。

答案

在你的例子中,你没有等待它。从Alpha-7开始,create方法返回一个承诺。你可以找到最新的文件here。请看这个例子:

import { Component } from '@angular/core';
import { PopoverController } from '@ionic/angular';

@Component({
    template: `
        <ion-list no-margin>
            <ion-item (click)="onDismiss()">Dismiss</ion-item>
        </ion-list>
    `
})
export class PopupMenuComponentPopover {
    constructor(private popoverCtrl: PopoverController) {

    }

    async onDismiss() {
        try {
            await this.popoverCtrl.dismiss();
        } catch (e) {
            //click more than one time popover throws error, so ignore...
        }

    }
}

以下是如何打开它:

  async openPopover(args) {
    const popover = await this.popoverController.create({
      component: PopupMenuComponentPopover,
      ev: args,
      translucent: false
    });
    return await popover.present();
  }

编辑:这是你可以称之为:

@NgModule({
  ...
  declarations: [DashboardWebsiteMorePopover],
  entryComponents: [DashboardWebsiteMorePopover],
  ...
})
export class PopupMenuComponentModule {}

以上是关于PopoverController Ionic 4?的主要内容,如果未能解决你的问题,请参考以下文章

带有 Popovercontroller 的 BarButtonItem?

我的 popovercontroller 终止

为 PopoverController 子类化 UITableViewController

当 iPad 旋转时,ActionSheet 的 PopoverController 不会停留在窗口的中心

Swift iOS - 如何将 UIPopoverBackgroundView 类中的方法连接到不同类中的 PopoverController?

在以 Uinavigationcontroller 作为视图的 Popovercontroller 中更改导航栏和工具栏的色调