【发布时间】:2013-10-16 08:33:29
【问题描述】:
我有一个代表餐厅订单的对象:
function order () {
this.customer_name = ''
this.menu = // menu object
}
扩展了一些用于业务逻辑的对象方法,例如:
order.prototype.value = function() {
var total = 0;
for (var i = 0; i < this.menu.length; i++) {
// calculate the order value
}
return total;
}
在 Angular 控制器中,订单在提交时会被推送到数组中(通过视图中按钮的 ng-click):
var ref = new Firebase('https://myfirebase.firebaseio.com');
$scope.orders = [];
angularFire(ref, $scope, 'orders');
$scope.currentOrder = orderService;
$scope.submitOrder = function() {
$scope.orders.push($scope.currentOrder);
};
一旦将订单推送到数组中,orders[0].customer_name 之类的属性就会起作用,但orders[0].value() 之类的方法则不起作用。
Firebase/Angularfire 只会同步 JSON 似乎是合理的,但有没有一种方法可以让我将与订单相关的逻辑包含在 order 对象中,即无需编写 $scope.getOrderValue(orders[0])?
【问题讨论】:
标签: javascript angularjs firebase angularfire