Dynamic 我怎样才能使用;SystemJsNgModuleLoader“;在angular 2中,是否将动态模块导入应用程序?
在angular网站中有新的apiDynamic 我怎样才能使用;SystemJsNgModuleLoader“;在angular 2中,是否将动态模块导入应用程序?,dynamic,angular,angular-module,Dynamic,Angular,Angular Module,在angular网站中有新的api 有人知道我如何使用此api在应用程序中加载动态模块吗?我知道你会找到解决方案,但我提供的解决方案仅供其他人参考。代码已经被很好地注释过,并且可以很好地理解 createComponent(fileName, componentName){ let injector = ReflectiveInjector.fromResolvedProviders([], this.vcRef.parentInjector); // 1. Create mod
有人知道我如何使用此api在应用程序中加载动态模块吗?我知道你会找到解决方案,但我提供的解决方案仅供其他人参考。代码已经被很好地注释过,并且可以很好地理解
createComponent(fileName, componentName){
let injector = ReflectiveInjector.fromResolvedProviders([], this.vcRef.parentInjector);
// 1. Create module loader
let loader = new SystemJsNgModuleLoader(this.compiler);
loader.load(fileName).then((nmf:NgModuleFactory<any>)=>{
// 2. create NgModuleRef
let ngmRef = nmf.create(injector);
// 3. Create component factory
let cmpFactory = ngmRef.componentFactoryResolver.resolveComponentFactory( componentName );
// 4. Create the component
let componentRef = this.span.createComponent(cmpFactory,0,injector,[]);
// 5. Init the component name field.
componentRef.instance.name = "Some Name";
// 6. Refresh the component area.
componentRef.changeDetectorRef.detectChanges();
componentRef.onDestroy(()=> {
componentRef.changeDetectorRef.detach();
});
});
}
createComponent(文件名、组件名){
让injector=ResolvedProviders中的ReflectiveInjector.fromResolvedProviders([],this.vcRef.parentInjector);
//1.创建模块加载器
让loader=newsystemjsngmoduleloader(this.compiler);
loader.load(fileName).then((nmf:NgModuleFactory.我发现了几个使用SystemJsNgModuleLoader的示例
Angular2+从路径动态加载模块和组件:
Angular2+SystemJsNgModuleLoader测试:
在运行时动态导入模块:
延迟加载外部库的另一种方法:
从节点_模块延迟加载功能库模块:
延迟加载角度库的原因和方法:
我希望这会有帮助
谢谢,
Jignesh Raval您好,我面临着同样的问题。我可以问您文件名的值是多少吗?