离子:周期性依赖并且无法解析所有参数

时间:2018-05-26 12:26:07

标签: ionic-framework circular-dependency injectable

我有一个导入帮助程序服务的组件(ItemDetailsPage)

import { Helper } from './../../app/Helper';

并且在构造函数中我有

constructor(public viewCtrl: ViewController, public navCtrl: NavController, public navParams: NavParams, 
    public helper: Helper...)

在Helper.ts中我有以下内容:

import { ItemDetailsPage } from './../pages/item-details/item-details';

我就这样使用它:

showItemWindow() {
    let itemModal = this.modalCtrl.create(ItemDetailsPage, null, { cssClass: "modal-fullscreen" });
    itemModal.present();
}

当执行上述操作时,我得到“无法解析ItemDetailsPage的所有参数...我明白这是因为循环依赖。我可以将showItemWindow移动到另一个组件并且它可以工作但是我把它放在原因在帮助器中,是因为我从3个不同的页面需要它,我想要一个地方打开这个窗口。

是否有其他更清洁的解决方案或将其移至3个不同的组件是正确的?感谢

1 个答案:

答案 0 :(得分:0)

注意在构造函数中声明...类后,如何有3个句点Helper。您的构造函数方法应如下所示。

constructor(public viewCtrl: ViewController, public navCtrl: NavController, public navParams: NavParams, 
    public helper: Helper)