离子4模态分量参数类型错误

时间:2019-01-17 23:51:07

标签: ionic-framework ionic4

我正在处理模式组件(正在运行),但是我在IDE中遇到一个错误,告诉我参数不正确。

这是我的(工作中的)代码,但是我不确定自己做错了什么?

async openMyModal(myProps: ModalProps) {
    const modal = await this.modalCtrl.create({
      component: MyPropsModalComponent,
      componentProps: myProps
    });

    modal.present();
}

我得到的错误是:

  

参数类型{component:MyPropsModalComponent,componentProps:ModalProps}无法分配给参数类型ModalOptions

点击进入实际的(离子)代码,就可以看到模态选项:

...
component: T;
componentProps?: ComponentProps<T>;
...

我应该以其他方式在.ts文件中组装模式吗?谢谢您的任何建议!

编辑

myProps只是我要传递给模态组件的对象。

export interface ModalProps {
  name?: string;
  email?: string;
  foo?: string;
  ...
}

MyPropsModalComponent是我使用CLI生成的组件。因此,我正在做的事情(正在起作用)是将对象(myProps)传递给MyPropsModalComponent。所有人都在工作和渲染,我很好奇为什么看到这个错误?我猜这是棉绒错误吗?

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,事实证明IntelliJ是从ModalOptions而不是ngx-bootstrap自动导入@ionic/core的。无论出于何种原因,我的IDE都无法自行找到@ionic/core版本)。

所以我改变了:

import {ComponentProps, ModalOptions} from 'ngx-bootstrap';

进入:

import {ComponentProps, ModalOptions} from '@ionic/core';