mongoose Uncaught(in promise)TypeError:$.data.filter不是函数(react和express)

w46czmvw  于 2023-05-23  发布在  Go
关注(0)|答案(1)|浏览(240)

我已经检查了已经存在的解决方案,但没有帮助

问题:Uncaught(in promise)TypeError:$.data.filter不是一个函数(react和express)而且,它在localhost上工作得很好,但是当我让它活起来时,它显示了上面的错误

前端代码

useEffect(() => {
  axios.get("/people").then((res) => {
    const offlinePeopleArr = res.data
      .filter((p) => p._id !== id)
      .filter((p) => !Object.keys(onlinePeople).includes(p._id));
    const offlinePeople = {};
    offlinePeopleArr.forEach((p) => {
      offlinePeople[p._id] = p;
    });
    setOfflinePeople(offlinePeople);
  });
}, [onlinePeople]);

后端代码

app.get("/people", async (req, res) => {
  const users = await UserModel.find({}, { _id: 1, username: 1 });
  res.json(users);
});

我试图找到解决办法,但没有一个对我有用。
当我运行console.log(res.data)时,它显示this in response

ni65a41a

ni65a41a1#

这里,res的值不是数组。它在本地工作,因为它采用相对路径。当部署代码时,相对路径可能无法以精确的方式工作。
1.尝试在浏览器中点击get URL的部署变体,看看是否会得到响应。
1.检查DB,如果你有那个对象。
1.另外,处理@Jaswinder的回答中提到的失败场景。

相关问题