Javascript $emit数据在控制器中不可访问
我正在尝试使用$emit将数据从服务发送到控制器。每当我在服务中运行console.log时,数据就在那里,但在控制器$rootScope.$on中,我看不到数据Javascript $emit数据在控制器中不可访问,javascript,angularjs,Javascript,Angularjs,我正在尝试使用$emit将数据从服务发送到控制器。每当我在服务中运行console.log时,数据就在那里,但在控制器$rootScope.$on中,我看不到数据 service.GetTest = function () { var inside = this; var promise = $http( { method: 'POST', url: inside.baseUrl + 'Admin/setTest', con
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);
});
$on
的回调首先有事件。您的函数应该是函数(事件、数据)
,而不是函数(数据)
也应考虑从代码> GETTest< /COD>返回承诺。这听起来像是一种资源方法,它应该承诺链而不是使用事件。
在修改代码后,这是您的工作吗?