我试图在div元素中提取值,一旦得到值,我想调用一个函数来获取数据。我无法在div元素中调用函数 HERE是我的Html
为stats.html
<div class="ItemsList" data-ng-init="GetStatsData({{menu.result}})">
{{myitems}}
<div>
RootController.js
function GetStatsData(resultval) {
homeService.getitemsData(resultval)
.success(function (data, status, headers, config) {
$scope.myitems = data
});
}
我在直接调用函数时获取数据,但是当我尝试使用div标签并调用该函数时,我无法使其工作,它从不调用该函数。我的主要目标是在myitems中获取值,在函数中传递menu.result。
感谢您解决此问题的任何帮助
答案 0 :(得分:0)
如文档ngInit中所述
The only appropriate use of ngInit is for aliasing special properties of ngRepeat
您应该更改从控制器调用GetStatsData
的方式,如下所示
$scope.group.menuData = [] // set the array of data here
for(n = 0, n < $scope.group.menuData.length, n++) {
// wrap you async calls inside function when in loop
$(function(index) {
//CALL GetStatsData
GetStatsData($scope.group.menuData[index]);
})(n);
}
GetStatsData的实现几乎不需要修改
function GetStatsData(menu) {
homeService.getitemsData(menu.result)
.success(function (data, status, headers, config) {
menu.myitems = data
});
}
现在你的视图html应该是这样的
<div class="ItemsList">
{{menu.myitems}}
<div>