使用Promise和循环遍历Mongoose集合可以通过以下步骤实现:
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/mydatabase', { useNewUrlParser: true, useUnifiedTopology: true })
.then(() => {
console.log('Connected to MongoDB');
})
.catch((error) => {
console.error('Failed to connect to MongoDB', error);
});
const userSchema = new mongoose.Schema({
name: String,
age: Number,
email: String
});
const User = mongoose.model('User', userSchema);
const getUsers = () => {
return new Promise((resolve, reject) => {
User.find()
.then((users) => {
resolve(users);
})
.catch((error) => {
reject(error);
});
});
};
getUsers()
.then((users) => {
users.forEach((user) => {
console.log(user);
});
})
.catch((error) => {
console.error(error);
});
在上述代码中,我们首先定义了一个名为getUsers
的函数,该函数返回一个Promise对象。在该函数内部,我们使用User.find()
查询所有用户,并通过resolve
将结果传递给Promise的then
方法。如果查询出错,则通过reject
将错误传递给Promise的catch
方法。
然后,我们调用getUsers
函数,并在then
方法中使用循环遍历返回的用户数组,并打印每个用户的信息。如果发生错误,则在catch
方法中打印错误信息。
这样,我们就使用了Promise和循环遍历Mongoose集合。请注意,这只是一个简单的示例,实际应用中可能需要更复杂的逻辑和错误处理。
领取专属 10元无门槛券
手把手带您无忧上云