2017-02-06 10 views
5
const routes: Routes = [ 
{ path: 'x', component: xComponent }, 
{ path: 'y', component: yComponent }, 
{ path: 'zComponent', component: zComponent } 
]; 

Eğer URL'de küçük yazıyorsam, beni bileşen sayfasına yönlendiririm, eğer X Capital yazarsam geçerli bir url demez. url duyarsız Vakaaçısal 2 Güzergah 3.0, büyük/küçük harfe duyarlı

+0

bu deneyin: http://stackoverflow.com/a/39560520/1081079 – freshbm

cevap

14

İki seçenek nasıl yapılır

.. 1.

import { DefaultUrlSerializer, UrlTree } from '@angular/router'; 

export class LowerCaseUrlSerializer extends DefaultUrlSerializer { 
    parse(url: string): UrlTree { 
     return super.parse(url.toLowerCase()); 
    } 
} 

Ve app.module.ts

providers: [ 
     { 
      provide: UrlSerializer, 
      useClass: LowerCaseUrlSerializer 
     } 
    ], 

Seçenek 1 URLSerializer Class oluşturmak 2 : Rotanızda basit bir çözüm.

{ path: '/home', redirectTo: ['/Home'] }, 
{ path: '/Home', component: HomeComponent, name: 'Home' }, 
+0

1 Seçeneği ı bulun olabilir en iyisidir. Çünkü rota parametrelerine de uygulanır. –

+0

Seçenek 1 için önemli not: root uygulama modülü sağlayıcınıza ve yalnızca bu modüle eklemelisiniz. –

+0

Bunun için tüm rotalarınızın küçük olması gerekir –