我有两个服务:loginservice和userservice。我正在尝试将userservice注入loginservice,应用程序将无法运行。
在控制台中,我有一个错误:
错误:无法解析用户服务的所有参数:([对象对象],
?).在syntaxrror.zoneawareerror
(http://localhost:4200/polyfills.bundle.js:7156:33)
syntaxerror.baseerror[作为构造函数]
这是我的登录服务:
import {UserService} from '../services/user.service';
@Injectable()
export class LoginService {
constructor(public _http: Http,public us:UserService) {
}
和用户服务:
@Injectable()
export class UserService {
constructor(private _http: Http , public _ls: LoginService) {
}
角度模块:
import {LoginService} from './services/login.service';
import {UserService} from './services/user.service';
@NgModule({
declarations: [
AppComponent,
],
imports: [
BrowserModule,
FormsModule,
HttpModule,
],
exports: [BrowserModule, SlimLoadingBarModule],
providers: [UserService, LoginService, appRoutingProviders],
bootstrap: [AppComponent]
})
export class AppModule { }
最佳答案
你有一个循环引用。
您的UserService
需要LoginService
,LoginService
需要UserService
。
删除其中一个依赖项。例如,重构用户服务,使其不需要对loginservice的引用