2017-03-08 8 views
0

私のモジュールの1つ(MasterModule)から、MasterComponentとその子ルートをロードします。これらの子のルート怠惰な負荷の一つ私のEquipmentSLModule遅延ロードされたモジュールからの直接ルートアクセスを防止する

マスター-routing.module.ts

機器-SL:このサブモジュールから

const routes: Routes = [ 
    { 
    path: 'master', redirectTo: '/master/dashboard', pathMatch: 'full' 
    }, 
    { 
    path: 'master', 
    component: MasterComponent, 
    children: [ 
     { 
     path: 'dashboard', 
     component: DashboardComponent, 
     }, 

     ... // Other routes 

     { 
     path: 'SL', 
     loadChildren: './../equipment/equipment-SL.module#EquipmentSLModule' 
     } 
    ] 
    } 
]; 

は、私が子供のルートを追加しますルーティングモジュール.ts

const routes: Routes = [ 
    { 
    path: 'toto', 
    component: EquipmentComponent, 
    }, 
]; 

次に私のルートにアクセスできますが成功しましたが、URLから/totoに直接行くこともできます。 /totoへのアクセスを禁止する方法はありますか?

答えて

0

/totoへのアクセスを防止する必要がある場合は、ルーティング設定から除外するか、いくつかの条件を作成する場合はCanActivateを使用してください。

//equipment-SL-routing.module.ts 
const routes: Routes = [ 
    { 
    path: '', 
    component: EquipmentComponent, 
    }, 
]; 
+0

Iは遅延負荷から 'マスタ/ SL/toto'経路を必要とするので、それは'機器-SL-routing.module.ts'からルーティングを定義しているように私は、それを削除することはできません。 'CanActivate'以外のオプションはありませんか? –

+0

@AlexBeugnetアップデート –

+0

を参照してください。問題を変更しないで、 '/ master/SL '(私が望むもの)に到達することができますが、手動で'' ''に行くこともできます。 is not good –

関連する問題