【发布时间】:2019-01-17 13:58:44
【问题描述】:
我正在使用 Ionic 4,并希望通过 ModalController 使用模态。在 Ionic 3.x 中它相当简单,但我在 Ionic 4 中遇到了一些错误:
我尝试在其中启动 Modal 的页面:
import { Component, OnInit } from '@angular/core';
import { NavController, NavParams, ModalController } from '@ionic/angular';
import { MyModalPage } from '../MyModalPage/MyModalPage.page';
@Component({
selector: 'app-product-display',
templateUrl: './product-display.page.html',
styleUrls: ['./product-display.page.scss'],
})
export class ProductDisplayPage implements OnInit {
private params:any = {};
public product:product = {};
constructor(
public modalCtrl : ModalController
) {
}//End of Constructor
ngOnInit() {
}
async openModal()
{
var data = { message : 'hello world' };
const modalPage = await this.modalCtrl.create({
component: MyModalPage,
componentProps:{values: data}
});
return await modalPage.present();
}
}
我的模态页面:
import { Component, OnInit } from '@angular/core';
import { NavController } from '@ionic/angular';
@Component({
selector: 'app-my-modal',
templateUrl: './my-modal.html',
styleUrls: ['./my-modal.page.scss'],
})
export class MyModalPage implements OnInit {
constructor(
) { }//End of Constructor
ngOnInit() {
}//End of ngOnInit
closeModal()
{
//TODO: Implement Close Modal this.viewCtrl.dismiss();
}
}//End of Class
我收到一条错误消息,指出它可能未包含在条目组件中:
ERROR 错误:未捕获(承诺中):错误:未找到组件工厂 对于 MyModalPage。你添加到 @NgModule.entryComponents?错误:找不到组件工厂 我的模态页面。你把它添加到@NgModule.entryComponents 了吗?
当我将它添加到产品显示模块的入口组件时,我收到另一个错误,指出它尚未导入。当我将它添加到产品显示模块的导入中时,我得到以下信息:
core.js:1671 ERROR 错误:未捕获(承诺中):错误:意外 模块导入的指令“MyModalPage” 'ProductDisplayPageModule'。请添加 @NgModule 注释。错误: 模块导入的意外指令“MyModalPage” 'ProductDisplayPageModule'。请添加@NgModule 注解。
如何使用模态控制器在 Ionic 4 / Angular 6 中呈现模态?
谢谢
【问题讨论】:
标签: angular ionic-framework modal-dialog