内のコントローラ機能にアクセスすることはできません。これは私のコントローラである:
var app = angular.module('myApp', [ 'ngMaterial' ]);
app.controller('searchController',['$scope','$http',function($scope,$http) {
this.selectedItemChange = function(item) {
$http.get("url").then(function(response) {
this.initializeProfiles();
});
}
this.initializeProfiles = function() {}
}
しかし、私はエラーTypeError: this.initializeProfiles is not a function
を取得しています。
$ http.getの.then内でinitializeProfiles()
にアクセスするにはどうすればよいですか?
これは機能します。ありがとう。 しかし、なぜこれが起こりますか? – pkyo
@pkyo - これは 'this'と関係があり、コールスタックによって参照が変わり、コールバックで暗黙に捕捉されません。 「this」の詳細をすべて説明してくれたとても良いSO答えがあります。私には分かります。私はそれを見つけるでしょう。 – Igor
@pkyo - それを見つけました、私は最後にそれを含めるために私の答えを更新しました。 – Igor