RouterModule组件,loadChildren,redirectTo

时间:2016-12-15 10:16:33

标签: angular

有人可以告诉我componentloadChildrenredirectTo之间的区别吗?

export const ROUTES: Routes = [{
   path: '', redirectTo: 'signin', pathMatch: 'full'
  }, {
    path: 'app',   loadChildren: () => System.import('./layout/layout.module')
  }, {
    path: 'login', loadChildren: () => System.import('./login/login.module')
  }, {
    path: 'signin', loadChildren: () => System.import('./signin/signin.module')
  }, {
    path: 'error', component: ErrorComponent
  }, {
    path: '**',    component: ErrorComponent
  }
];

3 个答案:

答案 0 :(得分:3)

显然,文档可以做到。查看router页面。

否则,component将直接链接到component的路径,loadChildren用于加载asynchronous component,而redirectTo只是重定向到另一个路由。

答案 1 :(得分:0)

组件 =>用作单个路由URL的字符串。

redirectTo =>与组件相同,即单个路由的URL。用于重定向URL(如果可用),或使用默认URL。

loadChildren =>一个字符串,充当要加载的一组路线的URL,或返回此类路线的函数。

答案 2 :(得分:0)

component 将在应用加载时加载所有组件

loadChildren 用于延迟加载

<块引用>

默认情况下,NgModules 是急切加载的,这意味着只要 应用程序加载,所有 NgModules 也会加载,无论它们是否加载 立即需要。对于具有大量路由的大型应用程序,请考虑 延迟加载——一种根据需要加载 NgModules 的设计模式。懒惰的 加载有助于保持初始包的大小更小,这反过来有助于 减少加载时间。

More about angular lazy loading.