설명서에 따라 angularjs ui-router url 매개 변수는 기본적으로 선택 사항입니다. 필수 매개 변수를 만드는 방법이 있습니까? 매개 변수가 누락되었거나 null 인 경우처럼 페이지로 진행하지 않겠습니까?AngularJS ui 라우터 필수 매개 변수
희망을 보내 주시면 감사하겠습니다. 경로 PARAMS가없는 경우
감사
설명서에 따라 angularjs ui-router url 매개 변수는 기본적으로 선택 사항입니다. 필수 매개 변수를 만드는 방법이 있습니까? 매개 변수가 누락되었거나 null 인 경우처럼 페이지로 진행하지 않겠습니까?AngularJS ui 라우터 필수 매개 변수
희망을 보내 주시면 감사하겠습니다. 경로 PARAMS가없는 경우
감사
사용 UI 라우터 resolve 확인합니다. 주석이 경우 코드도 축소 된 경우 실패합니다 해결의
//Example of a single route
.state('dashboard', {
url: '/dashboard/:userId',
templateUrl: 'dashboard.html',
controller: 'DashboardController',
resolve: function($stateParams, $location){
//Check if url parameter is missing.
if ($stateParams.userId === undefined) {
//Do something such as navigating to a different page.
$location.path('/somewhere/else');
}
}
})
대답 위 prasents 잘못된 사용. Look at this issue u [email protected]가 해결해야 할 객체를 알려주지 않기 때문에 많은 시간을 디버깅하는데 보냈습니다. 당신이 축약 필요한 경우
resolve: {
somekey: function($stateParams, $location){
//Check if url parameter is missing.
if ($stateParams.userId === undefined) {
//Do something such as navigating to a different page.
$location.path('/somewhere/else');
}
}
끝 괄호가 없습니다. – sfs
왜 '경우 (대해서 typeof PARAM ==='정의되지 않은 ') 다음 리디렉션? 템플릿에 – user3791775
또는 그 이전에 링크가 표시되지 않았습니까? – user3791775
내 견해가 이미 아닙니다. 또한 내 컨트롤러에서 할 수 없다. 상태를 선언하는 동안 그것을 할 수있는 방법이 있습니까? – Jed