javascript - 使用 forEach 进行求和时,totalUnits 不是可迭代错误
问题描述
我正在遍历 skidList 数组,并使用totalUnits
.
但是我收到totalUnits not iterable
错误。
我尝试使用 let 而不是 var 但它给出了相同的错误。
const createPurchaseOrder = skidList => {
const [expectedItems, setexpectedItems] = useState([]);
const [actualItems, setactualItems] = useState([]);
skidList.forEach(skid => {
var totalUnits = 0;
Object.keys(skid).forEach(key => {
totalUnits += parseInt(skid[key], 10);
})
setexpectedItems(expectedItems.concat([ ...totalUnits ]));
setactualItems(actualItems.concat([0]));
})
newPurchaseOrder.expectedItems = expectedItems;
newPurchaseOrder.acturalItems = actualItems;
console.log(newPurchaseOrder);
}
解决方案
totalUnits
是类型Number
。您期望它如何通过使用[ ...totalUnits ]
. ...
必须适用于可迭代的东西,array
而不是像这样的原始类型number
推荐阅读
- wordpress - WordPress 自定义帖子类型链接已更改但返回 404
- c++ - graphics.h 没有输出
- python - 我正在尝试在 discord.py rewrite 中添加角色
- python - 将包含 timedelta64 对象列表的列保存为 Parquet 文件
- django - 如何在 Django UpdateView 中绑定表单?
- node.js - 如何修复 node.js 中的 Ecconrefused 错误?
- android - 如何在 android 中构建现有的 React-native ios 应用程序?
- git - 从 HEAD 签出文件的原因 ^ 将文件放在暂存区
- postgresql - 运行 psql 命令时出现 psql 的符号查找错误
- java - 如何使用来自 html 表单的 POST 的 Spring Security?