这个估计用到的不多
上级为借 余额= 借额 - 贷额
上级为贷 余额 =贷额 - 借额
多级列表
借
--贷
----借
----贷
------借
--借
--贷
/* data 对象 name 对象内需要计算的key */ // 根据借贷关系公式,获取字段得最终值 export function getChildrenNameSize(data, name) { const { balanceDirect } = data let J = [] let size = 0 const D = data.children.filter(v => { if (v.balanceDirect == 'J') J.push(v) return v.balanceDirect == 'D' }, []) // 借金额 const Jmoney = J && J.reduce((pre, cur) => { let val = cur[name] if (cur.children) val = getChildrenNameSize(cur, name) return pre + +val }, 0) // 贷金额 const Dmoney = D && D.reduce((pre, cur) => { let val = cur[name] if (cur.children) val = getChildrenNameSize(cur, name) return pre + +val }, 0) // 根据上级计算 实际金额 if (balanceDirect == 'J') { size = Jmoney - Dmoney } else { size = Dmoney - Jmoney } return size }