바쁜 비디오 웹 사이트를 구축 중이며 현재 코드를 다시 작성하고 있지만이 문제는 해결할 수 없습니다. 그래서 나는 컨트롤러를 가지고 있습니다 .js는 모든 요청을하고 main.js에서 데이터를 받고 파싱을 원합니다.Angularjs가 데이터를 전달합니다.
그래서 내 controller.js 보이는 같은 :
'use strict';
angular.module('Movie.services', []).service('Movie', ['$q', '$http', function($q, $http) {
var API_URL = 'http://api.themoviedb.org/3/person/';
var API_KEY = '?api_key=xxx';
this.findCast = function(id) {
var cast = [];
$http.get(API_URL, {
params: {
query: id,
api_key: API_KEY
}
}).then(function(result) {
angular.forEach(result.data, function(item) {
cast.push(item);
});
});
}
}]);
JSON : 난 내 컨트롤러에서 데이터를 수신 할 수있는 방법을 내 질문은
app.controller("Cast", function($scope, $http, $routeParams, Page, Movie) {
$scope.getCast = [];
var person_id = $routeParams.person_id;
Movie.findCast(person_id).then(function(result){
$scope.getCast = result ;
});
});
: 같은 http://docs.themoviedb.apiary.io/reference/people/personid/get 그리고 내 main.js 보인다 main.js .js 그래서 그것을 구문 분석 할 수 있습니다. 내가 뭘 이제 얻을 것은, 때문에 내가 캐스팅 싶어 예를 들어 여러 통화를 할 controller.js이 내 응용 프로그램을 구축 할 수있는 권리 인프라 경우 잘 모르겠어요 오류
TypeError: Cannot read property 'then' of undefined
입니다 영화, TV 시리즈 등등.
Controller.js, 당신은 약속 기능 then
호출하려고하는 것이 문제가
this.findCast = function(id) { }
this.getMovies = function(id) { }
this.getSeries = function(id) { }
this.getPopulair = function(id) { }
감사합니다.하지만 어떻게 내 main.js에서 이것을 호출합니까? 당신이 var movie를 추가했다는 것을 보았습니다. – Frenck
당신은 = Movie.findCast()를 호출 할 수 있습니다. –
감사합니다. promise 결과 함수'console.log (item);에 로그인 할 때'결과를 얻지 만,'Movie.findCast (person_id) .then (function (result) { $ scope.getCast = result; console .log (result); }); 그것은 나에게 정의되지 않은 것을주지 않습니다. – Frenck