【发布时间】:2021-04-05 22:03:11
【问题描述】:
我有下面的异步功能。 DeviceStatus 是一个 Mongo 设备集合,它定义了 SerialNumber 属性。在这里,我收集了 DeviceStatus 集合中所有设备的数组,然后遍历它们中的每一个。我想添加一个名为 NumberOfRetries 的新属性并将其设置为零。下面的函数适用于第一个 DeviceStatus 文档。也就是说,在循环中,它会更新文档并为第一个文档添加 NumberOfRetries,但不会完成剩余文档的更新。有谁知道这里需要进行哪些更改,以便我能够更新 DeviceStatus 集合中的所有 Mongo 文档。
static async addNumberOfRetriesCap(){
const devices = await DeviceStatus.find().exec();
for(let i = 0; i < devices.length; i++){
let device = devices[i];
await DeviceStatus.updateOne({"SerialNumber": device.SerialNumber}, {$set: {"NumberOfRetries" : "0"}})
}
}
【问题讨论】:
标签: javascript node.js mongodb asynchronous