升级到Angular 7后,我的代码中得到parentInjector is deprecated: No replacement
。既然显然已经弃用了,为什么没有可用的更新,或者Angular团队只是错过了将其添加到文档中的原因?
我正在使用注入器动态添加dom中的组件。
const factory = this.cfr.resolveComponentFactory(modalClass);
const ref = factory.create(this.vcr.parentInjector);
答案 0 :(得分:1)
由于显然不赞成这样做,为什么没有可用的更新,或者Angular团队只是错过了将其添加到文档中的原因?
这是API错误,应该是私有成员。依赖项注入器没有层次结构。您无法从Angular中的 injector 中获得 parent 注入器。
我正在使用注入器动态添加组件dom。
您应该改用this.vcr.injector
。如果此更改破坏了您的源代码,则需要更改您的源代码。
GitHub问题:https://github.com/angular/angular/pull/25174
要求弃用API的请求:https://github.com/angular/angular/pull/25092#discussion_r205181787