Ionic 2 模态控制器初始化错误,无法读取未定义的创建属性



我试图从我的主页上显示离子2中的模态页面。但是我一直遇到这个错误。

TypeError: Cannot read property 'create' of undefined
at HomePage.showModal (http://localhost:8100/build/main.js:52608:35)
at CompiledTemplate.proxyViewClass.View_HomePage0.handleEvent_9 (/AppModule/HomePage/component.ngfactory.js:261:34)
at CompiledTemplate.proxyViewClass.<anonymous> (http://localhost:8100/build/main.js:90950:37)
at HTMLButtonElement.<anonymous> (http://localhost:8100/build/main.js:36597:36)
at t.invokeTask (http://localhost:8100/build/polyfills.js:3:9723)
at Object.onInvokeTask (http://localhost:8100/build/main.js:34668:37)
at t.invokeTask (http://localhost:8100/build/polyfills.js:3:9659)
at e.runTask (http://localhost:8100/build/polyfills.js:3:7083)
at HTMLButtonElement.invoke (http://localhost:8100/build/polyfills.js:3:10836)

这是我的家。TS-

    import { Component } from '@angular/core';
import { NavController, NavParams, ViewController, ModalController } from 'ionic-angular';
import {ModalPage} from '../modal/modal';
@Component({
  selector: 'page-home',
  templateUrl: 'home.html'
})

export class HomePage {
    //nav;
    tasks;
  static get parameters(){
        return [[NavController]]
    }
constructor(
    public nav : NavController,
    public modalCtrl: ModalController         
){
        //this.nav = nav;
        //this.modalCtrl = modalCtrl;
        this.tasks=[
            {task:'task1', priority:'low', status:'pending'},
            {task:'task2', priority:'high', status:'pending'},
            {task:'task3', priority:'normal', status:'pending'},
            {task:'task4', priority:'low', status:'done'},
            {task:'task5', priority:'high', status:'done'}
        ]
    }

showModal(){
    let modal = this.modalCtrl.create(ModalPage);
    modal.present();
}

}

这是我的app.module.ts-

import { NgModule, ErrorHandler } from '@angular/core';
import { IonicApp, IonicModule, IonicErrorHandler } from 'ionic-angular';
import { MyApp } from './app.component';
import { HomePage } from '../pages/home/home';
import { ModalPage } from '../pages/modal/modal'
@NgModule({
  declarations: [
    MyApp,
    HomePage,
      ModalPage
  ],
  imports: [
    IonicModule.forRoot(MyApp)
  ],
  bootstrap: [IonicApp],
  entryComponents: [
    MyApp,
    HomePage,
      ModalPage
  ],
  providers: [{provide: ErrorHandler, useClass: IonicErrorHandler}]
})
export class AppModule {}

我花了几个小时来搜索此原因,无法找到适当的原因。我还查看了文档,但是代码片段不匹配。

我真的很感谢您的帮助。我是离子2。

的新手

如果您是get parameters使用,

static get parameters(){
        return [[NavController],[ModalController]]
    }

应在此处设置所有构造函数参数。

或完全删除static get parameters()方法,因为它不是真正需要的。

最新更新