2017-04-09 11 views
2

$ emitを使用して、サービスからコントローラにデータを送信しようとしています。私がサービス内のconsole.logであるときは、データはそこにありますが、コントローラー$ rootScope。$にはデータが表示されません。

service.GetTest = function() { 
    var inside = this; 
    var promise = $http(
    { 
     method: 'POST', 
     url: inside.baseUrl + 'Admin/setTest', 
     contentType: 'application/json' 
    }); 
    promise.then(function (data) { 
     console.log(data); 
     $rootScope.$emit('monitor', data); 
    }) 
} 

$rootScope.$on('monitor', function (event,data) { 
     console.log(data); 
}); 
+0

コードを変更した後、これはあなたには役に立ちますか? –

答えて

1

$onのコールバックevent最初のを持っています。あなたの機能は、function(data)ではなく、function(event, data)でなければなりません。

また、約束をGetTestから返すことを検討する必要があります。これは、イベントを使用する代わりに連鎖を約束するリソースメソッドのように聞こえる。

関連する問題