2017-01-09 6 views
1

나는이 기능 all_data 다음과 같은 경로 및 해결 개체 : 나는이 같은 경로에 몇 가지 매개 변수를 전달하는 경우ngRoute의 인수를 resolve 객체 내부의 함수로 전달하려면 어떻게해야합니까?

.when('/events', { 
    controller: eventCtrl, 
    templateUrl: 'some/path.html', 
    resolve:{ 
     all_data: function(){ 

     } 

내 질문이있다 :

.when('/events/:param1'), { 
.... 

는 어떻게 든이 통과 할 수있다 " param1 "을 다음과 같이"all_data "함수에 추가합니다.

.... 
resolve: { 
all_data: function(param1){ 
    console.log(param1); 
} 
... 

?

답변

0

참고 성공적으로 완료됩니다. 즉, 루트 확인 기능에서 $routeParams이 올바른지 의존 할 수 없습니다. 대신 $route.current.params을 사용하여 새 경로 매개 변수에 액세스 할 수 있습니다.

-AngularJS $routeParams API Reference

+0

고마워. 이것은 실제로 더 잘 작동했습니다. 그렇지 않으면 $ routeParams 객체를받은 후 콜백을 사용하는 방법을 생각하고있었습니다. 정말 제대로 작동하지 않았다. – mirchev1977

1

당신은 당신이 ngRoute를 사용하는 assiuming이처럼 해결 방법을 쓸 수 있습니다 당신은 UI 라우터를 사용하는 경우 사용 $stateParams 대신 $routeParams

all_data: ['$routeParams', function($routeParams){ 
    console.log($routeParams.param1); 
} 

'/events/:param1' 같은 URL입니다. $routeParams 만 경로 변경 후 를 업데이트됩니다

+0

감사합니다, 그것은 나에게 큰 도움이었다. 불행히도 나는 자신을 평가할 수 없다. 왜냐하면 나 자신이 투표에 필요한 점수를 갖고 있지 않기 때문이다. 또 다른 한가지 : 당신이 마지막에 닫는 대괄호를 삽입 잊어 버린 : all_data : [ '$ routeParams을', 기능 ($ routeParams) { 을 console.log ($ routeParams.param1); }] – mirchev1977

+0

제 대답으로 문제가 해결되면 문제가되지 않습니다. 감사합니다 –

+0

준비가되어있는 것으로 표시되어 있습니다! – mirchev1977