Arrays Express返回空数组,但数组可以
一切正常,当我尝试记录数组时,它会将所有内容都写为真,但当我尝试作为响应返回时,它会在前端变为空。我不知道为什么会发生这种情况,普通消息数组工作正常。我不知道为什么Arrays Express返回空数组,但数组可以,arrays,rest,express,mongoose,Arrays,Rest,Express,Mongoose,一切正常,当我尝试记录数组时,它会将所有内容都写为真,但当我尝试作为响应返回时,它会在前端变为空。我不知道为什么会发生这种情况,普通消息数组工作正常。我不知道为什么 console.log('messageye girdi'); MessageModel.find({ receiver: req.body.uuid, read: false }).then((Messages) => { function removeDups(names) {
console.log('messageye girdi');
MessageModel.find({
receiver: req.body.uuid,
read: false
}).then((Messages) => {
function removeDups(names) {
let unique = {};
names.forEach(function(i) {
if (!unique[i]) {
unique[i] = true;
}
});
return Object.keys(unique);
}
let Users = [];
Messages.forEach(Message => {
Users.push(Message.sender);
})
const nonduplicate = removeDups(Users);
console.log(nonduplicate);
const MessageUsers = [];
var bu = 0;
nonduplicate.forEach(User => {
UserModel.findOne({
uuid: User
}).then((UserData) => {
console.log(UserData.username);
MessageUsers.push(UserData.username);
console.log(MessageUsers);
})
bu++;
if (bu = nonduplicate.length) {
console.log("bu mu acaba " + JSON.stringify(MessageUsers));
let ArrayVer = Object.assign({}, MessageUsers);
return res.send({
success: true,
users: MessageUsers
});
}
});
您好,这是一个包含多个日志和数组的非运行代码段,因此您需要更加具体:哪个console.log和哪个数组?最后一个返回的是MessageUsers,但返回到FE时为空。