【发布时间】:2022-01-27 22:03:49
【问题描述】:
这个问题可能有点傻,但我遇到了一个简单的疑问,实际上是在劫持我的思想。 :)
我需要从数据库中恢复几个对象(在 mongo 中),然后在将它们发送到 API 服务器时,将单个属性更改为它们,以确保将记录置于正确的状态,以便尽快我收到一个响应(在另一个端点上异步发送给我)。 现在我正在这样做:
const SomeModel = mongoose.model('SomeModel');
const items = await SomeModel.find({ someField: 'someValue' });
const promises = items.map(async (item) => {
await sendItem(item);
item.status = 'SENT';
await item.save();
});
await Promise.all(promises);
但是正如你所看到的,我对该函数做了一些不好的副作用:我实际上是在操作一个传入函数参数的对象......但是如果没有我如何实现相同的目标那,而且还不必对每个项目进行单独的查询?
感谢您的热情回复, 贾科莫。
【问题讨论】:
标签: javascript node.js arrays mongoose javascript-objects