无法在Angular.js控制器中调用未定义的方法'jsonp'

时间:2013-07-04 13:36:15

标签: angularjs

以下控制器正在生成错误消息“无法调用未定义的方法'jsonp'”。我怀疑我没有正确地注入$ http。有人可以告诉我我做错了什么吗?

'use strict';

/* Controllers */

angular.module('myApp.controllers', []).

  controller('ImagesCtrl', [function ImagesCtrl ($scope, $http) {
    $http.jsonp('http://localhost:3000/image?quantity=1&language=Cantonese&callback=JSON_CALLBACK')
    .success(function(data){
      console.log(data);
      $scope.image = data;
    }); 

  }])


  .controller('CaptionsCtrl', [function() {

  }]);

1 个答案:

答案 0 :(得分:1)

我猜你没有正确地注入依赖

app.controller(<controller_name>, ['$scope', function($scope) {}]);

在你的情况下应该是

app.controller('ImagesCtrl', ['$scope', '$http', function($scope, $http) {}]);

或者如果您不想使用注释(适用于缩小):

app.controller('ImagesCtrl', function () {
    console.log("in the controller");
});