다음은 요점입니다. 웹 응용 프로그램의 차트를 작성하고 있습니다. 나는 자바의 웹 서비스에서 하나의 객체로부터 차트에 대한 정보를 얻는다. 가 여기에 기본적으로 내가 여러 컨트롤러에서 동일한 데이터를 사용하려면 어떻게해야합니까?
{ "chart1Info": [9, 42, 43, 7, 20], "chart2Info": [45, 3, 21, 34] (...and so on)}
그리고 내 app.js에
를 검색하고있어 JSON 개체의 형식입니다 (내 AngularJS와 코드입니다) 나는 7 개 차트 7 컨트롤러가 있습니다. 각 컨트롤러 나는 모든 정보와 함께 동일한 객체를 얻기 위해 서비스를 호출하고 있습니다. 내가 원하는 무엇app.controller('chart1', function($scope, $http){
$http.get('//WEBSERVICE_PATH').then(function(response) {
$scope.chartData = response.data; //The JSON object
//Then I build the charts...
});
});
은 모두에 대해 동일한 객체이기 때문에 내 컨트롤러를 사용할 수 있도록 서비스 만 1 시간을 호출하고 개체를 저장합니다. 나는 다른 모든 컨트롤러를 envolving 메인 컨트롤러를 사용하고
$rootScope.chartData = response.data;
//Inside the $http.get() function
같은 JSON 객체에 $ rootScope의 propertie를 설정하려고하지만 그것은 다른 컨트롤러에 정의되어 있지 않습니다. 답변 해 주셔서 감사합니다
글로벌 컨트롤러가 호출 차트 서비스를로드하고 $ rootScope 변수에 해당 데이터를 저장하는 경우 추가로 사용할 수 있습니다 –