首页 > 解决方案 > 为什么从请求中获取数据时我的状态没有被过滤

问题描述

我正在使用 deleteMany 删除用户,但当前用户是管理员。但是我很难过滤状态。

这是我的前端代码;


    UsersChannel.bind('deleted-all', (ALLdeletedUsers) => {
                setUserList(
                    userList.filter(
                        (user, index) => user._id !== ALLdeletedUsers[index]?._id
                    )
                );
            });

我正在使用推送器来实时获取数据。如您所见,有这个吗?因为即使我记录它,它也会返回 undefined ,它会返回预期的数据。

这是我的请求后端代码;


     exports.deletealluser = async (req, res) => {
        try {
            const { sub } = req.user;
    
            const deletedUsers = await User.find({ _id: { $ne: sub } });
            await User.deleteMany({ _id: { $ne: sub } });
    
            pusher.trigger('users', 'deleted-all', deletedUsers);
    
            res.status(201).json({
                message: 'A all user is successfully deleted!',
            });
        } catch (err) {
            return res.status(400).json({
                message: 'Something went wrong.',
            });
        }
    };

有没有办法过滤掉它?

标签: reactjsmongodbmongoosepusherreact-context

解决方案


推荐阅读