2013-07-24 10 views
25

私はこれに直接的な答えを見つけることができませんでした。いずれにせよ、ここに行く。AngularJS Routing Case Sensitivity

my $ routeProviderのすべての呼び出しはうまく動作しますが、大文字と小文字が区別されます。ここでのサンプルコードを示します:

config(function ($routeProvider) { 
    $routeProvider. 
     when('/', { controller: 'TmpCtrl', templateUrl: '/app/home.html' }). 
     when('/foo', { controller: 'TmpCtrl', templateUrl: '/app/foo.html' }). 
     otherwise({ redirectTo: '/' }); 
}); 

私はそう「/ foo」でなど、「/ foo」で、「/ foo」を、すべてが同じパスにリダイレクトすることを追加する必要がありますか?

+0

たぶん、この質問は役に立ちでしょうか? http://stackoverflow.com/questions/14994324/angularjs-base-href-case-sensitive –

+0

これは関連しているようですが、私がこの仕事を私からするために必要なことを十分に理解していません。私の前提は、特定のスクリプトを作成してプロジェクトに組み込む必要がありますが、他に何を追加する必要があるのか​​分かりません。 – ThisLanham

答えて

53

あなたがケースの感度を切り替えるために$ routeProviderに渡すことができるオプションがあります:

config(function ($routeProvider) { 
    $routeProvider. 
     when('/', { controller: 'TmpCtrl', templateUrl: '/app/home.html' }). 
     when('/foo', { controller: 'TmpCtrl', templateUrl: '/app/foo.html', caseInsensitiveMatch: true }). 
     otherwise({ redirectTo: '/' }); 
}); 
+2

これはバージョン1.2.2で動作します。ありがとう@ジョン、これは答えとしてマークする必要があります! –

+1

これを行うには$ routeProviderの設定があると思います。私はないと思いますか? – RJB

+2

@RJBあります:$ routeProvider.caseInsensitiveMatch = true; – Mathew