2017-12-03 15 views
5

tôi không thể để di chuyển từ trang đăng nhập để trang bảng điều khiển khi tôi sử dụng trẻ em trong định tuyến như sau:góc 5 EmptyError: không có yếu tố theo thứ tự trong khi thực hiện các tuyến đường con

const appRoutes: Routes = [ 
{ path: '', redirectTo: 'login', pathMatch: 'full' }, 
{ path: 'login', component: LoginComponent,pathMatch: 'full' }, 
{ 
    path: 'dashboard',pathMatch: 'full', /* canActivate: [AuthGuard], */ component: DashboardComponent , 
    children: [ 
    { 
     path: 'online-submission/:moduleName',pathMatch: 'full', component: OnlineSubmissionComponent, 
     /* canActivate: [AuthGuard], */data:{ 
      breadcrumb: "online-submission" 
     } , 
     children: [ 
     { path: 'batch-upload-members',pathMatch: 'full', component: BatchUploadMembersComponent, 
     /* canActivate: [AuthGuard], */data:{ 
      breadcrumb: "batch-upload-members" 
     } }, 
     { path: 'select-members',pathMatch: 'full', component: SelectMembersComponent, 
     /* canActivate: [AuthGuard], */data:{ 
      breadcrumb: "select-members" 
     } 
     } 
     ] 
    } 
    ] 
}, 
{ path: '**', component: PageNotFoundComponent } 

];

Tuy nhiên, khi tôi xóa thuộc tính con khỏi các tuyến đường và khiến chúng hoạt động bình thường trở nên tốt hơn. Vấn đề gì khi tôi thực hiện lộ trình con? Tôi đang sử dụng cli 1.6.0-rc.1

Những gì tôi đã thử cho đến nay?

  1. Bình luận AuthGuard đã không làm việc vì vậy vấn đề không phải là cùng với một phần

  2. Tôi đã xác minh rằng chỉ khi tôi có chúng như con đường (mà tôi cần để làm breadcrumbs) Vấn đề này xảy ra. Nếu tất cả các đường bay anh chị em, các tuyến hoạt động đúng

  3. sử dụng {enableTracing:true} trong RouterModule.forRoot nơi tôi tìm NavigationStart(id: 4, url: '/dashboard') mà dường như url chính xác cho DashboardComponent

  4. tìm kiếm trên SO cho câu hỏi có tựa đề tương tự nhưng không ai đã giải quyết cùng một vấn đề :

Angular 2.0.1 Router EmptyError: no elements in sequence

Angular2 routing issues - Zone aware error No elements in sequence

Angular 2.0.1 Router EmptyError: no elements in sequence

+2

Nếu rxjs của bạn là "^ 5.5.2", bạn cố gắng thay đổi để "5.5.2". –

+0

Sau khi thực hiện thay đổi này, tôi nhận được thông báo lỗi "Không thể đọc thuộc tính 'TảiChọn' không xác định" –

Trả lời

13

Lỗi này là do phiên bản cuối cùng của Bộ định tuyến của Angular. Vui lòng xóa hoàn nguyên phiên bản góc cạnh hoặc thêm đường dẫnPhù hợp: 'đầy đủ' vào tuyến đường của bạn.

export const userRoutes = [ 
    { path: 'profile', component: ProfileComponent, pathMatch: 'full' }, 
    { path: 'login', component: LoginComponent, pathMatch: 'full' } 
]; 


export const appRoutes = [ 
    { path: '', redirectTo: '/events', pathMatch: 'full' }, 
    { path: 'user', loadChildren: './user/user.module#UserModule' } 
]; 

Bạn có thể tìm thấy vấn đề here

+0

Tôi đã sử dụng pathMatch: 'đầy đủ' trong các tuyến đường trong mã mà tôi đã đăng trong câu hỏi nhưng vẫn cung cấp cùng lỗi . –

+0

Liên kết bạn cung cấp cho biết sự cố xảy ra với RxJs 5.5.3 nhưng tôi đang sử dụng RxJs 5.5.2 khi tôi kiểm tra trong tệp package.json –

+0

Làm việc cho tôi. Cảm ơn rất nhiều!!! –

Các vấn đề liên quan