CastError: Cast to ObjectId failed for value "undefined" at path

CastError: Cast to ObjectId failed for value "undefined" at path

我正在尝试使用从 api 获取数据,在我的 useEffect 函数中,它包含 2 个获取请求。第二个获取请求需要一个基于第一个获取请求的 return 值的参数。但是我遇到了一个错误,它是 CastError: Cast to ObjectId failed for value "undefined" at path from mongoose.任何人都可以提供帮助或者有什么干净的方法可以解决吗?非常感谢!

例如:

 const[data,setdata]=useState([])
 useEffect(() => {
    axios.get('http:localhost.....').then({res=>{
         setdata(res.data)
  }})
   axios.get(`http:localhost.....${data._id}`)
}, [])

那是因为数据将在下一次渲染时可用,添加另一个 useEffect 以在数据有值时触发第二次调用:

 const[data, setData]= useState([]);

 useEffect(() => {
    axios.get('http:localhost.....').then(res=> setData(res.data);
  }, [])

useEffect(() => {
   if(data.lenght){
     axios.get(`http:localhost.....${data._id}`);
   }
  }, [data])