Angular中组件的动态导入和加载

时间:2017-03-27 14:10:32

标签: angular dynamic loading lazy-evaluation

我想创建一种门户,它将加载角度组件而不显式导入它们。有一个快速简便的样本吗?我看到ComponentFactoryResolver可能会用于此但我需要将组件写入单独的文件或从目录中读取,然后根据需要导入和加载。有人可以给出好的例子或指出最小的步骤吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

Typescript 2.4现在支持动态import。可以使用此功能动态导入模块或组件。例如:

您可以读取json文件并在以下代码中传递模块或组件URL,其中getModules()是服务函数

 this.apiService.getModules().subscribe(
        data =>{       
                data.forEach(moduleUrl => {
                    import(''+moduleUrl).then( module => {                        
                       console.log(module);
                   });
                });

            }
        },
        error => {}

    );