2016-07-21 3 views
0

나는 컨트롤러에 stateParams을 정의하려고 노력하지만, 그것은 나에게 빈 개체 {}stateParams를 각도 컨트롤러에 전달하는 방법은 무엇입니까?

내 app.js 반환

angular.module('testApp', ['ui.router','ngResource']) 
.config(function($stateProvider, $urlRouterProvider) { 
    $stateProvider 
     .state('app', { 
      url:'/', 
      views: { 
       'header': { 
        templateUrl : 'views/header.html' 
       }, 
       'messages': { 
        templateUrl : 'views/messages.html', 
        controller : 'MessageController' 
       }, 
       'chat': { 
        templateUrl : 'views/chat.html', 
        controller : 'ChatController' 
       }, 
       'footer': { 
        templateUrl : 'views/footer.html' 
       } 
      } 
     }) 
     .state('app.chat', { 
      url: ':id' 
     }); 
     $urlRouterProvider.otherwise('/'); 
}) 

내 controller.js :

angular.module('testApp') 

.controller('IndexController', ['$scope', '$stateParams', function($scope,$stateParams) { 

    $scope.chosenMessage = $stateParams; 

}]); 

그리고 내 템플릿 :

 <div ui-view="messages" class="col-xs-6"></div> 
     <div ui-view="chat" class="col-xs-6"></div> 

선택한 ID를 정의하려면 StateParams의 ID가 필요합니다. 메시지에 대한 세이지 및 채팅 콘텐츠.

+0

$ state.params 또는 $ stateParams.id를 사용하십시오. –

+0

@Rejs $ state.params가 작동하지 않으며 $ stateParams.id가 undefined를 반환합니다. – Mike

답변

관련 문제