错误:未捕获(承诺):覆盖不存在(离子可选)

我正在使用离子可选包github进行产品选择。在组件中打开 IonicSelectable 之前,我在控制台中遇到错误。


ERROR Error: Uncaught (in promise): overlay does not exist

    at resolvePromise (zone.js:831)

    at zone.js:741

    at rejected (tslib.es6.js:71)

    at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke (zone.js:391)

    at Object.onInvoke (core.js:17299)

    at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke (zone.js:390)

    at Zone.push../node_modules/zone.js/dist/zone.js.Zone.run (zone.js:150)

    at zone.js:889

    at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:423)

    at Object.onInvokeTask (core.js:17290)

我不明白提出这个问题的问题是什么。我已经按照说明中的说明使用了该软件包,例如app.module.ts


import { IonicSelectableModule } from 'ionic-selectable';

@NgModule({

  imports: [

    IonicSelectableModule

  ]

})

export class AppModule { }

在像这样的延迟加载模块中


import { IonicSelectableModule } from 'ionic-selectable';

import { HomePage } from './home';

@NgModule({

  declarations: [

    HomePage

  ],

  imports: [

    IonicPageModule.forChild(HomePage),

    IonicSelectableModule

  ]

})

export class HomePageModule { }


慕工程0101907
浏览 373回答 3
3回答

慕标5832272

您的代码看起来不错,问题可能出在您的组件类中。上面提到的问题可能是由于 Ionic LoadingController 的使用不足而出现的,一个常见的用例是 loader.dismiss() 在 loader.present() 之前执行,在这种情况下,控制台中会出现同样的错误。您需要检查您的应用程序中是否发生这种情况。希望这会有所帮助。

蓝山帝景

确保您没有错误地导入 PopoverController 而不是 ModalController。

森林海

我也遇到了这个问题,其他解决方案都不适合我。起作用的是确保要解除的模式存在,然后调用解除。{       const popover = await this.popoverCtrl.getTop();        if (popover)            await popover.dismiss(null);    }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript