未捕获的错误:无法解析<service>的所有参数

时间:2019-05-29 10:48:16

标签: angular ionic-framework

此错误阻止我的应用由于模式服务而加载

关注此post

app.module

import { ModalService } from './Services/Modal/modal.service';

providers: [
...,
ModalService,
...
]

modal.service.ts

import { Injectable } from '@angular/core';
import { ModalController } from '@ionic/angular';
import { ProfileComponent } from '..';
import { ChatComponent} from '..';
import { Contact } from '../../../Schemas/Contact';
import 'core-js/es7/reflect';

@Injectable({
  providedIn: 'root'
})
export class ModalService {

  constructor(
    private modalCtrl: ModalController    
  ) { }

  public async openChat(contact: Contact) {
    const chat = await this.modalCtrl.create({
      component: ChatComponent,
      componentProps: {contact}
    });
    return await chat.present();
  }

  public async openProfileComponent(info: Info) {
    const profileComponent = await this.modalCtrl.create({
      component: ProfileComponent,
      componentProps: {info}
    });
    return await profileComponent.present();
  }

  public dismiss() {
    return this.modalCtrl.dismiss();
  }
}

出现问题的页面

import { ModalService } from 'src/app/Services/Modal/modal.service';

export class ChatComponent {
  constructor(
    ...
    public modalService: ModalService,
    ) {}

 public async openProfile() {
    this.modalService.openProfileComponent(this.info);
 }
}

我不确定为什么会发生这种情况,因为还有其他页面也在使用此服务,并且没有问题。我已经尝试比较并看到有什么不同,但是我看不到为什么它无法解析该参数。

我知道我有一个循环依赖关系,一旦将其加载到我的设备上,我就会解决。但是,它无法解决,我也不知道

-entryComponent -(click)-> chatComponent
                           |-(click)->profileComponent

1 个答案:

答案 0 :(得分:0)

如果没有圆依赖错误,就无法制造离子4模态控制器,因此将其报废。