2016-07-24 4 views
0

내 홈 페이지에는 두 개의 링크가 있습니다. 클릭하면 사전 정의 된 데이터가있는 표가 표시됩니다. 아래는 내가 내가 Get List Normal 클릭하면각도 js의 페이지에서 데이터를 전달하는 방법

<body> 
     <div id="page-wrapper" > 
      <div id="page-inner"> 
       <a href="getfeedbackList">Get List Normal</a> 
       <div class="row text-center pad-top">          
        <a ng-click="setRoute('feedbacklist')">Get List Angular JS</a>    
       </div>    
      </div> 
     </div>  
</body> 

문제가 주를위한 코드 페이지 -

adminHomeContent.jsp입니다. 결과를 정확하게 표시하고 있지만 부분 페이지 업데이트가 아닌 다른 페이지에 표시됩니다 (그래도 iframe을 사용하여 완료 할 수 있음). Get List Angular을 클릭하면 페이지로 이동하지만 새 페이지로 데이터를 보낼 수는 없습니다. 페이지 탐색이 this-

successLadder에 의해 수행되고있는 JS 우리는 컨트롤러 -

HelloController에 매핑 된 URL이 Get List Normal를 들어

public class HelloController { 

    @Autowired 
    FeedbackServices feedbackServices; 

    @RequestMapping(value = "/", method = RequestMethod.GET) 
    public ModelAndView getData() { 
     System.out.println("Home Controller"); 
     ModelAndView model = new ModelAndView("adminHome"); 
     return model; 

    } 

    @RequestMapping(value = "getfeedbackList", method = RequestMethod.GET) 
    public ModelAndView getfeedbackList(ModelAndView model) throws IOException { 
     System.out.println("getfeedbackList Controller"); 
     List<FeedbackBean> listFeedback = feedbackServices.getFeedbacklist(); 
     return new ModelAndView("feedbacklist", "listFeedback", listFeedback); 

    } 

} 

그리고 각도에서을 된 .java .js

angular.module('successladder', []) 
     .config(function ($routeProvider) 
     { 
      $routeProvider 
        .when('/feedbacklist', {template: 'partial/pages/feedbacklist.jsp'}) 
        .otherwise({redirectTo: '/adminHomeContent', template: 'partial/pages/adminHomeContent.jsp'}); 
     }); 

function MainCtrl($scope, $location) 
{ 
    $scope.setRoute = function (route) 
    { 
     $location.path(route); 
    }; 
    $scope.showModal = false; 
    $scope.toggleModal = function() { 
     $scope.showModal = !$scope.showModal; 
    }; 
} 

나는 iframe으로 그것을 달성 할 수 있지만 나는 angualr js로 그것을하고 싶다. angualr js에서 이것을 구현하는 방법에 대한 아이디어가 있습니까?

+0

$ rootscope를 사용하거나 서비스를 만들 수 있습니다. – brk

답변

0

전적으로 귀하의 유스 케이스를 따르지는 않지만 데이터를 보유 할 서비스를 만든 다음이 서비스를 여러 컨트롤러에 주입하는 것이 합리적입니까? 또한이 목록보기가 다른 위치에서 동일하면 아마 해당 데이터의 실제 렌더링을 처리하기위한 지시문을 작성하는 것이 가장 좋습니다.

0

AngularJS 서비스를 만들려면보십시오. 서비스는 싱글 톤 (singleton)으로 존재하며 따라서 앱 전체에서 전역입니다. 따라서 공유하려는 데이터를 서비스 내에 보관하면 다른 페이지에서 액세스 할 수 있습니다. 이 도움이 https://www.airpair.com/angularjs#6-services-and-factories

희망 : 첫 번째 서비스에 대해 배울 때

나에게 많은 도움이되었습니다.

관련 문제