Javascript 如何在angular 5中通过URL将组件注入ng模板?
有一个共享模块和一个功能模块 共享模块有一个共享组件和一个视图容器(Javascript 如何在angular 5中通过URL将组件注入ng模板?,javascript,angular,typescript,Javascript,Angular,Typescript,有一个共享模块和一个功能模块 共享模块有一个共享组件和一个视图容器(ng container),用于动态注入组件 既然共享组件不知道功能模块,因为功能模块依赖于共享组件,而不是反过来,那么在编译时不知道组件类型的情况下,如何动态注入组件呢? 更糟糕的是,共享组件是通过URL实例化的,而不是模板本身的一部分。我的意思是: 在功能模块中,共享组件通过以下方式导航: this.navigateViaUrl(“urlToTheSharedComponent”) 我尝试使用类似于中描述的反射 但是,我不想
ng container
),用于动态注入组件
既然共享组件不知道功能模块,因为功能模块依赖于共享组件,而不是反过来,那么在编译时不知道组件类型的情况下,如何动态注入组件呢?
更糟糕的是,共享组件是通过URL实例化的,而不是模板本身的一部分。我的意思是:
在功能模块中,共享组件通过以下方式导航:
this.navigateViaUrl(“urlToTheSharedComponent”)
我尝试使用类似于中描述的反射
但是,我不想使用私有变量,因为它不是未来的证明
const factories=Array.from(this.resolver[''u factories'].values())const factory=factories.find((x:any)=>x.selector==selector)
在
ng模板或ng容器中是否存在通过URL注入组件的方法?或者还有其他方法吗?该链接建议您使用专用词典,这样您就不需要使用私有财产。“通过url注入”有什么意义?@yurzui,意思是,如果组件在编译时不为人所知,因为它位于更高的抽象层(在组件所在的位置使用共享的功能层),那么在运行时,我们可以“使用组件的url获取组件”,类似于“让thisIsRequiredComponent=getComponent”(“UrlToTheComponent”)`