【发布时间】:2018-07-23 19:12:55
【问题描述】:
在我的应用程序中,我有不同的模块。我希望他们拥有一项通用的导航服务。但是当我在模块的组件中调用服务时,我得到了一个错误。
Can't resolve all parameters for PersonalPage: (?).
可能是什么问题?
app.module.ts
import { NavService } from "../shared/nav-service/nav.service";
import { PersonalPageModule } from '../pages/personal/personal.module';
@NgModule({
...
imports: [
...
PersonalPageModule,
...
],
providers: [
...
NavService,
...
]
...
});
个人.ts
import { NavService } from "../../shared/nav-service/nav.service";
@IonicPage({
name: 'page-personal',
segment: 'personal/:hash'
})
@Component({
selector: 'page-personal',
templateUrl: 'personal.html'
})
export class PersonalPage implements OnDestroy{
constructor(private navService: NavService) {
}
}
nav.service.ts
import { Injectable } from '@angular/core';
import { PersonalPage } from '../../pages/personal/personal';
@Injectable()
export class NavService {}
【问题讨论】:
-
你的
NavService也是你的PersonalPageModule的一部分吗? -
@Aravind 没有。但我尝试将 NavService 添加到 PersonalPageModule。它没有帮助
-
听起来像是典型的循环依赖
-
remove import {PersonalPage} from nav.service.ts 并检查您的 PersonalPageModule 是否导入了 PersonalPageComponent(必须在“声明”中
-
@Eliseo 但如果我想从其他模块使用此服务,不仅在 PersonalPageModule 中。我该怎么办?
标签: javascript angular ionic-framework ionic2