$scope と $http をコントローラーに注入しようとしたときに、以前に同様の質問をしました Angular.js コントローラーで undefined のメソッド 'jsonp' を呼び出せません。今、コードをコントローラー内の関数に移動することで、そのコードを少しリファクタリングしようとしています。同様の問題が発生しており、Angular での依存性注入のメカニズムを把握できないようです。以下は私の新しいコードです。$scope と $http は両方とも未定義です。私がやろうとしているのは、didSelectLanguage() が起動したときに http リクエストを作成し、結果のデータを親コントローラーの $scope の「image」変数に割り当てることです。この例で依存性注入がどのように機能するかについて誰かが教えてくれますか?
angular.module('myApp.controllers', []).
controller('ImagesCtrl', ['$scope', '$http', function ($scope, $http) {
$scope.didSelectLanguage=function($scope, $http) {
console.log($scope);
$http.jsonp('http://localhost:3000/image?quantity=1&language='+this.language+'&Flag=&callback=JSON_CALLBACK')
.success(function(data){
$scope.image = data;
});
}
}])