2017-07-31 8 views
0

ルーティングのレベルは、app.module>admin.module>manage-users.moduleです。角度ルーティングの設定に問題があります

何らかの理由により、''と一致するURLパスが、ではなく、の''パスにリダイレクトされます。

私は私のapp.routingで次のルートを持っている:

export const ROUTES: Routes = [ 
    { 
     path: '', 
     redirectTo: '/home', 
     pathMatch: 'full' 
    }, 
    { 
     path: 'home', 
     component: HomeComponent 
    }, 
    { 
     path: 'admin', 
     loadChildren: './admin/admin.module#AdminModule' 
    { 
     path: 'details', 
     loadChildren: './details/details.module#DetailsModule' 
    }, 
    { 
     path: 'search', 
     loadChildren: './search/search.module#SearchModule' 
    }, 
    { 
     path: 'contact', 
     loadChildren: './contact/contact.module#ContactModule' 
    }, 
]; 

@NgModule({ 
    imports: [ 
     RouterModule.forRoot(
      ROUTES, 
      { enableTracing: true, useHash: true, preloadingStrategy: NoPreloading } // <-- debugging purposes only 
     ) 
    ], 
    exports: [ 
     RouterModule 
    ] 
}) 
export class AppRoutingModule {} 

私のadminルーティング:

const adminRoutes: Routes = [ 
    { 
     path: 'admin', 
     component: AdminComponent, 
     children: [ 
      { 
       path: '', 
       canActivateChild: [ AdminGuard ], 
       children: [ 
        { path: 'users', 
         loadChildren: './manage-users/manage-users.module#ManageUsersModule' 
        }, 
        { 
         path: '', 
         component: AdminDashboardComponent 
        } 
       ] 
      }, 

     ], 
     canActivate: [ AdminGuard ] 
    }, 
]; 

@NgModule({ 
    imports: [ RouterModule.forChild(adminRoutes) ], 
    exports: [ RouterModule ] 
}) 
export class AdminRoutingModule { 
} 

は、ルーティングユーザーを管理するマイ:

const manageUsersRoutes: Routes = [ 
    { 
     path: '', 
     component: ManageUsersComponent, 
    } 
]; 


@NgModule({ 
    imports: [ RouterModule.forChild(manageUsersRoutes) ], 
    exports: [ RouterModule ] 
}) 
export class ManageUsersRoutingModule { 
} 
+1

これらのモジュールのインポート配列はどのように見えますか? – DeborahK

+0

彼らはその機能の中で独自のコンポーネントを宣言し、エクスポートします。 – Moshe

+1

彼はあなたのフィーチャモジュールのインポート内でルータモジュールをどのように設定しているのか知りたいと思うと思います。あなたのルートを上書きしているように見えるからです。フィーチャー・モジュールのインポート内で 'RouterModule.forChild'を使用していますか? – cyrix

答えて

1

私はより多くの何を求めていましたインポート配列は次のようになります。このようなもの:

imports: [ 
    BrowserModule, 
    HttpModule, 
    RouterModule.forRoot([ROUTES]), 
    ProductModule 
    ], 

これはコメントです...しかし、私はコメントの書式を設定する方法はわかりません。

このようなコードがあると、問題の原因となっている可能性があります。

+0

彼は彼の機能モジュールの中で' RouterModule.forRoot'を使っているように聞こえます。 – cyrix

+1

はい、可能です。それゆえ、私は彼らが使った輸入声明を見ることを望んでいたのです。 – DeborahK

関連する問題