1

我正在尝试使用using的 Laravel 关系Sum数组。amountVuejscomputed

在此处输入图像描述

顺便说一下它的返回NaN结果......

   computed: {
        subTotal() {
            return this.items.reduce((total, item) => {
                return total + parseFloat(item.deposits.amount);
            }, 0);
        }
    },

谢谢.....

4

2 回答 2

1

下面的代码将返回数组索引中所有项目的总和数组。

computed: {
    subTotal() {
        let itemsum = []
        this.items.forEach(item => {
            if (item.deposits && item.deposits.length > 0) {
                let total_deposit = item.deposits.reduce((total, val) => {
                    return  parseFloat(total.amount) + parseFloat(val.amount);
                }, 0);
                itemsum.push(total_deposit);
            } else {
                itemsum.push(0);
            }                  
        })
        return itemsum
    }
},
于 2019-12-20T10:22:59.497 回答
0
  1. 在 Laravel 中求和关系

    protected $appends = ['deposit_amount'];

    public function getDepositAmountAttribute(){ return $this->deposits()->sum('amount'); }

  2. VueJS 计算属性

    computed: { deposit_amount() { var amount = 0; for(let i = 0; i < this.item.deposits.length; i++) { amount += parseFloat(this.item.deposits[i].amount); } return amount; } }

于 2019-12-21T01:58:11.093 回答