[英]Pass data from service to controller
我正在尝试将数据从服务传递到角度js中的控制器,代码如下:
.controller('lista',function($scope,cetrams){
$scope.hola="This is it";
var test;
var testfn = function(){
test = 'Lala';
};
cetrams.success(function(data){
testfn();
test = data;
console.log('Inside service: '+test);
});
console.log('Inside controller: '+test);
})
服务正在运行,因为我得到了承诺并且执行了成功的功能,但我无法将该函数外的变量提供给控制器范围。
如果您希望该值在最后一行可用
console.log('Inside controller: '+test);
那你就错了 由于代码的异步性质,最后一行将在服务返回数据之前执行。
您的逻辑应该在success方法中完成,或者使用$scope.$watch
来监视测试变量的变化
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.