根据http://victorsavkin.com/post/126514197956/dependency-injection-in-angular-1-and-angular-2,可以使用以下内容将应用程序范围的服务添加到根注入器:
bootstrap(App, [UserService, LoginService]
然后可以在这样的子组件中访问:
class A {
constructor(userService: UserService) {
}
}
然而,一个异常结果,抱怨参数无法解决,并建议确保它们具有正确的类型或注释。
在子组件中注入应用程序范围的服务并访问它们的正确方法是什么?
答案 0 :(得分:1)
如果子组件位于单独的文件中,请确保仍然导入该服务。
import {UserService} from '../../services/UserService';
@Component({
// don't add UserService in providers here
})
class A {
userService: UserService;
constructor(userService: UserService) {
this.userService = userService;
}
}