Angular - 非路由功能模块的延迟加载

时间:2017-12-08 12:17:31

标签: javascript angular module lazy-loading

Angular有一种方法可以懒洋洋地加载路由功能模块 这意味着如果我想懒惰地加载一些模块,我必须在路由器中定义它。

有没有办法加载未路由懒惰的模块?
没有在路由中定义它们而没有在URL中反映它们的路径的含义,我只想在应用程序中的特定事件上加载它们。

1 个答案:

答案 0 :(得分:0)

Angular现在可以使用动态 routes.MapRoute( name: "Default", url: "{id}", defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } ); 来延迟加载代码和组件。

有一个很好的例子,使用import()加载特定组件,然后将它们添加到视图中: https://johnpapa.net/angular-9-lazy-loading-components/ 但是,如文章所述,加载组件的层次结构并不是那么容易。

这里还有一个更详细的介绍如何导入模块:https://indepth.dev/lazy-loading-angular-modules-with-ivy/