查找累计总和 React Typescript
Find Cumulative sum React Typescript
我正在尝试查找名为 csTotCommit 的数组列的累计和。我收到以下关于使用数字索引数组的索引错误。
元素隐式具有 'any' 类型,因为类型 'number' 的表达式不能用于索引类型 'IBasis'。
在类型 'IBasis'.ts(7053) 上找不到参数类型为 'number' 的索引签名
关于这个项目:prev[curr.csId]
我可以做些什么来从我的数组中索引或获取这个累积总和。
这是我的代码:
const cumSum = (data: IBasis[]) => {
data.reduce((prev: IBasis, curr: IBasis) => {
if (curr.csId && curr.rankId) {
prev[curr.csId]? prev[curr.csId] += curr.csTotCommit : prev[curr.csId] = curr.csTotCommit
}
})
};
这是我的界面:
export interface IBasis {
rankId: number | null,
csTrancheId: number | null,
csId: number | null,
csTotCommit: number | null,
csBasisPerUnit: number | null,
}
reduce函数首先输入的是累加结果
const cumSum = (data: IBasis[]) => {
data.reduce((total: number, curr: IBasis): number => {
if (curr.csId && curr.rankId) {
total += curr.csId?? 0; // '?? 0' will add zero when csId is null
curr.csTotCommit = total;
}
return total; // you always have to return cumulative total
}, 0) // starting with total as zero.
};
我正在尝试查找名为 csTotCommit 的数组列的累计和。我收到以下关于使用数字索引数组的索引错误。
元素隐式具有 'any' 类型,因为类型 'number' 的表达式不能用于索引类型 'IBasis'。 在类型 'IBasis'.ts(7053) 上找不到参数类型为 'number' 的索引签名 关于这个项目:prev[curr.csId]
我可以做些什么来从我的数组中索引或获取这个累积总和。
这是我的代码:
const cumSum = (data: IBasis[]) => {
data.reduce((prev: IBasis, curr: IBasis) => {
if (curr.csId && curr.rankId) {
prev[curr.csId]? prev[curr.csId] += curr.csTotCommit : prev[curr.csId] = curr.csTotCommit
}
})
};
这是我的界面:
export interface IBasis {
rankId: number | null,
csTrancheId: number | null,
csId: number | null,
csTotCommit: number | null,
csBasisPerUnit: number | null,
}
reduce函数首先输入的是累加结果
const cumSum = (data: IBasis[]) => {
data.reduce((total: number, curr: IBasis): number => {
if (curr.csId && curr.rankId) {
total += curr.csId?? 0; // '?? 0' will add zero when csId is null
curr.csTotCommit = total;
}
return total; // you always have to return cumulative total
}, 0) // starting with total as zero.
};