首页 文章

Ionic2 - Popover(原始异常:TypeError:无法读取未定义的属性'create')

提问于
浏览
0

当我尝试实现 Popover 时,我收到以下错误:

ORIGINAL EXCEPTION:TypeError:无法读取undefined的属性'create'

这是我的代码:

import {Popover, Page, NavController, MenuController, NavParams} from 'ionic-angular';

 @Component({
template: 'This is a popover'
 })

 class MyPopover{}

 export class HomePage {

 constructor(nav, http, navParams) {}

 //PopOver
  showPopover(ev){
     let popover = Popover.create(MyPopover);
     this.nav.present(popover, {
       ev: ev
 })
 }}

谁知道我为什么会这样?我相信导入 Popover 时会出现问题,因为我在导入 Popover 之后正在执行以下操作:

console.log("Popover object : ",{Popover})

我得到 undefined 所以大多数问题就在那里 .

1 回答

  • 3

    我想你错过了 HomePage 中的 @Component

    @Component({
      template: `This is a popover`
    })
    
    export class MyPopover{}
    
    
    // This @Component declaration was missing in your code
    @Component({
      templateUrl:"build/pages/home/home.html"
    })
    export class HomePage {
    
      constructor(private nav: NavController) { }       
    
      //PopOver
      public showPopover(ev){
         let popover = Popover.create(MyPopover);
         this.nav.present(popover, {
           ev: ev
         });    
      }
    }
    

    有了这个(至少使用beta.9) popover 正常工作 . 您可以在this plunker中使用此代码 .

相关问题