我有一个 Angular 控制器方法,它计算等待就座的人数(比如在餐厅)。模型包含设置为 true 或 false 的属性。该方法应该遍历模型,检查“就座”属性并计算所有正确的。
见一个简单的例子:http: //jsfiddle.net/JoeDredd/nB4tP/
function seatingCtr($scope) {
$scope.bookings = [{
name: 'fred',
seated: true
}, {
name: 'george',
seated: false
}, {
name: 'barney',
seated: false
}];
$scope.toSeat = function () {
var count = 0;
angular.forEach($scope.bookings, function (booking) {
count += booking.seated ? 0 : 1;
});
return count;
};
}
该方法适用于页面加载,并且更改就座下拉菜单正确反映了属性(就座人数),但是当您再次将下拉菜单更改为时,更新后的计数器不会反映正确的数字。我无法弄清楚为什么计数器没有正确更改,因为逻辑似乎都很合理。
谁能指出我正确的方向?
提前谢谢。