Angular 9使用动态路线动态导入模块

时间:2020-05-25 22:03:53

标签: angular webpack module angular9 dynamic-import

我想使用后端服务中的可变字符串路由动态导入角度模块。 例如,我的后端服务在应用程序启动时(使用APP_INITIALIZER)向我发送此响应。

{
    "hostname": "a-tenant",
    "modules": {
        "home": {
            "class": "HomeAModule",
            "path": "home-a.module",
         },
    },
},

我的应用程序结构为:

 project structure

所以我想导入这样的模块

const path = `./tenants/${response.hostname}/home/${response.modules.home.path}`;

import(path).then(m => m[response.modules.home.class]);

我最终的导入代码在运行时应该是这样的:

import('./tenants/a-tenant/home/home-a.module').then(m => m.HomeAModule);

但是我遇到了这个错误,我认为webpack无法处理这样的动态负载。

谢谢您的帮助:)

Error

1 个答案:

答案 0 :(得分:1)

不幸的是,使用动态字符串进行动态导入是不可能的