我有一个核心应用程序,可以从Assets文件夹动态加载模块,然后将这些模块作为“ umd.js ”文件删除。
现在我想做什么
您知道某些动态导入的模块现在可以使用某些外部库,例如 @ angular / http 或 @ angular / material 等。这些模块可以正常工作而不会崩溃,我需要从核心应用程序中提供这些库,然后以这种方式加载它们:
SystemJS.set('@angular/http',SystemJS.newModule(http));
现在,因为应用程序将已经编译,所以我想将所有外部库放在目录中并使用动态导入。
如果我尝试导入node_modules中已经存在的库,一切都会顺利进行: 示例
var htp2 = await import('C:/Users/esamyoun/Angular Projects/dynamicModulesDemo/node_modules/@angular/http');
但是当我尝试从不在node_modules目录下的文件夹中导入相同的库时,如下所示:
var htp2 = await import ('C:/Users/esamyoun/Angular Projects/dynamicModulesDemo/src/assets/httptest/http');
该对象在htp2中返回相同,但是当我将其分配给SystemJS时它不起作用。 有谁知道如何导入不在node_modules中的库? PS:我正在使用角度Cli 8