2016-12-25 5 views
6

각도 매개 변수를 각도 2로 유효성을 검사하려면 어떻게해야합니까?각도 2 경로 매개 변수 유효성 검사

{path: 'artist/:id', component: ArtistInfoComponent} 

내가 원하는 모든 매개 변수 id가 유효한 번호 그렇다면, 단지 구성 요소를 보여 있는지 확인하는 것입니다 예를 들어, 나는 경로를 가지고있다. 그렇지 않으면 오류 메시지가있는 페이지를 표시하십시오.

Route Guards를 Angular 2로 찾았습니다.하지만 다른 페이지에 많은 매개 변수가있을 수 있으므로이 방법이 유효하지 않은 것으로 생각합니다.이 모든 페이지에 대해 개별 Route Guard를 쓰는 것이 내가 원하는 것이 아니기 때문입니다.

각 경로 매개 변수에 대해 정규식을 지정할 수 있습니까?

UPD : 아마도 쿼리 매개 변수에 대한 유효성 검사를 수행 할 수있는 방법이 있습니까? 내 말은 그런 URL이 있다면 : /search?q=blablabla&page=2page이 유효한지 어떻게 확인할 수 있습니까? 경비원 없이는 할 수있는 방법이 있습니까?

+0

여기에서별로 도움이되지 않지만 빠른 google은 이것을주었습니다. https://github.com/angular/angular/issues/12442는 정규식을 사용할 수없는 것처럼 보입니까? 그 신비한'urlMatcher'에 대한 정보가 있습니다. 하지만 내가 말했듯이,이 페이지를 찾았습니다 :) – Alex

답변

2

경비원이가는 길입니다. 유효화 구성을 경로의 data 섹션에 넣고 재사용 가드를 만들어이 구성에 따라 매개 변수의 유효성을 검사 할 수 있습니다.

+0

좋은 답변! 감사합니다 – Taras

+0

좋아,하지만 어쩌면 거기에 쿼리 매개 변수에 대한 유효성 검사를 할 수있는 방법이 무엇입니까? 만약 내가 그런 URL을 가지고 있다면 :/search? q = blablabla & page = 2' 매개 변수'page'가 유효한지 어떻게 확인할 수 있습니까? 경비원 없이는 할 수있는 방법이 있습니까? – Taras

+0

라우터는 위치 변경을 처리해야하므로 유효성 검사를 수행 할 수있는 올바른 장소입니다. 또한 매개 변수가 유효하지 않은 경우 구성 요소의 매개 변수를 확인하고 라우터를 사용하여 수동으로 리디렉션 할 수 있습니다. – kemsky

관련 문제