【发布时间】:2020-07-29 03:42:10
【问题描述】:
我正在尝试使用 reduce 将我的 SQL 响应分为两类,income 和 outcome,但我得到的是“currentValue”(交易)类型作为我的回报而不是累加器(BalanceDTO),我只返回累加器,我如何将交易类型作为我的返回类型?
我真的不知道自己做错了什么,过去两个小时我完全卡住了。
import { getRepository } from 'typeorm';
import Transaction from '../models/Transaction';
interface BalanceDTO {
income: number;
outcome: number;
}
class GetBalanceService {
public async execute(): Promise<BalanceDTO> {
const transactionRepository = getRepository(Transaction);
const transactions = await transactionRepository.find();
const balance = transactions.reduce(
(accumulator: BalanceDTO, transaction): BalanceDTO => {
accumulator[transaction.type] += transaction.value;
return accumulator; //// HERE -- How it is returning the transactions type? ////
},
);
return balance;
}
}
export default GetBalanceService;
【问题讨论】:
标签: javascript typescript reduce