有人知道如何解决吗?
第132行代码:-
if (!item.rarity) { const rarity = ( tags.find((t) => t.category === 'Rarity') || {} ).name updateQuery = { ...updateQuery, rarity } }
输出:-
(节点:58908)弃用警告:不建议使用collection.update。采用 改为使用updateOne,updateMany或bulkWrite。 (节点:58908) UnhandledPromiseRejectionWarning:TypeError:无法读取属性 空的“稀有” 在Promise.all.inventory.map(C:\ protect1 \ utilities \ inventoryFetch.js:132:29) 在(节点:58908)处UnhandledPromiseRejectionWarning:未处理的承诺被拒绝。该错误是由于抛出 在没有catch块的异步函数内部,或者通过拒绝 没有使用.catch()处理的Promise。 (拒绝ID:1)
答案 0 :(得分:0)
您的“项目”在代码的这一点上获得未定义的值。
由于它在返回Promise的函数中,并且您显然没有通过catch()块处理错误情况,所以此错误会弹出。
在if-else块之前记录item变量。
在使用此函数的任何地方放置catch()块,并在其中记录错误本身。