Typed和Untyped延迟加载模块之间的区别

问题描述 投票:0回答:1

我想问一下Angular中这两种延迟加载模块的区别是什么?

    {
        path:'',
        loadChildren: './mymodule.module#MyModule'
    }

和:

    {
        path:'',
        loadChildren: () => MyModuleModule
    }

我不知道这两种方法是否有两种方法可以做同样的事情,或者是否存在性能或行为差异。

谢谢!

angular lazy-loading angular-router
1个回答
0
投票

这个语法:

{
    path:'',
    loadChildren: () => MyModuleModule
}

不会导致延迟加载模块。它直接引用MyModuleModule,因此当Angular CLI捆绑包时,它会将MyModuleModule与此代码所在的任何模块捆绑在一起。

如果需要在路径层次结构中的特定位置专门加载要素模块的子路径,请使用此语法。

但是注意:我曾经在我在会议上进行的一次“角度路由”会谈中介绍了这一点。 Angular团队的一名成员建议我停止覆盖它,因为在大多数情况下应该使用延迟加载的语法。

这个语法:

{
    path:'',
    loadChildren: './mymodule.module#MyModule'
}

导致延迟加载的模块。模块名称在字符串中定义,因此它没有直接引用,也没有与其定义的模块捆绑在一起。

© www.soinside.com 2019 - 2024. All rights reserved.