我很难将ng1服务(es6)注入ng2组件(ts),因为ng1服务不是类,而是es6中的服务。
这是角度网站的示例:
constructor(@Inject('heroes') heroes: HeroesService) {
this.hero = heroes.get()[0];
}
在我的应用程序中,HeroesService只是es6中的一项服务而不是ts。
任何帮助怎么做?
答案 0 :(得分:-1)
假设您正在将A1应用程序迁移到A2并使用UpgradeModule,您可以查看UpgradeModule documentation中发布的示例,在升级Angular1服务部分下。
基本上,需要使用注入器在全局级别向Angular 2注册服务:
// Register an Angular 2+ provider whose value is the "upgraded" Angular 1 service
{provide: 'titleCase', useFactory: (i: any) => i.get('titleCase'), deps: ['$injector']}
只要服务在A1中注册,它就可以工作。