2016-03-21 18 views
0

Numaraları içeren yolları kısıtlamak için şu anda regex /:id[0-9]+ kullanıyorum. Sadece sayı en az 2 basamak uzun olduğunda çalışır. Ben önceden
ex tek basamaklı sayıları daNumaraları kısıtlayan rota için normal ifade

sayesinde almaya yapmak nasıl:

.when('/:id[0-9]+', { 
    templateUrl: 'app/issue/view/view.html', 
    controller: 'viewIssueCtrl', 
    reloadOnSearch: true, 
    .... 
    ... 
) 
+0

Aslında regex düşünürdüm [0-9] +' eşleşir iki dahil olmak üzere _one_ veya daha fazla rakam. Tek haneli rakamlarla eşleşmediğini nasıl anladınız? –

+0

Tek haneye girdiğimde ana sayfaya yönlendiriliyordu, sadece/01 koyduğumda iyi çalışıyor çünkü/1 koyduğumda .home'a ​​dönüyor. Lütfen başka yollara/eve,/lastupdated/configure seçeneğine sahip olduğumu unutmayın. Bu yolların karıştığını düşünüyor musunuz? – Sudhakar

+0

Hmm ... Ben ngroute bilmiyorum, ama belki de başka bir şey tek haneli kullanım davasında hareket ediyor? –

cevap

0

angularjs için varsayılan yönlendirici yolları normal ifadeler desteklemez.

sonra rotanız sözdizimi yanlıştır ve değiştirilmesi gereken yollar için düzenli ifadeleri destekler ui-router kullanarak edilmelidir: - `

.when('/{id:[0-9]+}', { 
    templateUrl: 'app/issue/view/view.html', 
    controller: 'viewIssueCtrl', 
    reloadOnSearch: true, 
    .... 
    ... 
) 
+0

Çalışmıyor. Bu bile çift haneli durumda – Sudhakar

+0

@Sudhakar kırıyor Güncellenmiş cevabımı gör –

+0

kullanıyorum ngRoute – Sudhakar