6
嗨,我有下一個問題:角度:從視圖調用函數
在我看來,我調用函數prepareDynamicData(itemMenu);
<div ng-repeat="itemMenu in menuDetailsData.categories" class="headDetails fontH2">
<div style="display: none">{{prepareDynamicData(itemMenu)}}</div>
<a href="#" ng-show="dynamicData.expand">{{itemMenu.name}}</a>
<div ng-repeat="cat in dynamicData.data">
<p>{{cat.name}}</p>
<div class="articles">
<div ng-repeat="art in cat.items" class="article">
<div class="price">
<div></div>
<span><i>₪</i>{{art.price}}</span>
</div>
<div class="artDescr">
<span class="fontTitle">{{art.title}}</span>
<p class="fontDetails">{{art.description}}</p>
</div>
</div>
</div>
</div>
</div>
我知道,上面的循環repeting只有2次(驗證),但功能prepareDynamicData(itemMenu)調用4次,不知道爲什麼!?這裏是我的控制器:
function MenuItemCtrl($scope, $routeParams, $http, $location, sharedData) {
if (sharedData.getMenuDetails() == null) {
$location.path('/menu');
return;
}
else {
$scope.menu = sharedData.getMenu();
$scope.menuDetailsData = sharedData.getMenuDetailsData($routeParams.itemId);
}
$scope.dynamicData = {
data : new Array(),
expand : false
};
$scope.prepareDynamicData = function (itemMenu) {
if (itemMenu.items != null) {
$scope.dynamicData.data[0] = itemMenu;
$scope.dynamicData.expand = false;
}
else {
$scope.dynamicData.data = itemMenu.categories;
$scope.dynamicData.expand = true;
}
}
}
你能幫我澄清一下,爲什麼它的發生!感謝