[英]Update value inside angular js function
controller.js文件的格式為
function XYZController($rootScope,$scope){
var vm = this;
vm.a = 0;
var change = function(data){
data.forEach(function(e,i){
vm.a+=Number(e.value);
});
}
$log.log(vm.a);
}
調用了函數更改,但是$ log.log(a)打印0,而不是更新的總和。如何獲取vm.a的更新值?當我執行$ scope。$ apply時,出現錯誤“ $摘要已在進行中”。
您正在調用$log.log(vm.a);
在調用change()
之前,因此它將記錄您的vm.a = 0;
,如果您將代碼更改為此,它應該可以工作。
function XYZController($rootScope,$scope){
var vm = this;
vm.a = 0;
var change = function(data){
data.forEach(function(e,i){
vm.a+=Number(e.value);
});
$log.log(vm.a);
}
}
您不能在更改功能完成之前調用$ log,否則它將僅返回0。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.