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

私はx小文字で書くとコンポーネントページに移動しますが、Xキャピタルを書くと有効ではないと言われます。 URL大文字と小文字を区別角2ルート3.0、大文字と小文字を区別

+0

これを試してください:http://stackoverflow.com/a/39560520/1081079 – freshbm

答えて

14

つのオプション... 1. 1 URLSerializerクラスを作成

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

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

そして、あなたのapp.module.tsで

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

オプション2にする方法

: ルートファイルの簡単な回避策。

+0

1番目のオプションは、私が見つけることができる最高です。ルートパラメータにも適用されるためです。 –

+0

オプション1の重要な注意:ルートアプリケーションモジュールプロバイダとそのモジュールにのみ追加する必要があります。 –

+0

すべてのルートを動作させるには、小文字でなければなりません –

関連する問題