Javascript 使用另一个useeffect会导致另一个结果

Javascript 使用另一个useeffect会导致另一个结果,javascript,html,reactjs,typescript,use-effect,Javascript,Html,Reactjs,Typescript,Use Effect,这里是新的react开发者,这里我有两个useEffects,其中一个(第一个)是一个对象,它包含一个我想在第二个useEffect中使用的“名称”。第二个useEffect包含一个对象数组,这些对象数组有'billingName'和'driverName',其中一些具有相同的值,例如driverName:“james”。我想做的是在我的第二次useEffect检查中,如果第一次useEffect中的“name”与“driverName”相同,那么只需执行此“setOrders(res)”; s

这里是新的react开发者,这里我有两个useEffects,其中一个(第一个)是一个对象,它包含一个我想在第二个useEffect中使用的“名称”。第二个useEffect包含一个对象数组,这些对象数组有'billingName'和'driverName',其中一些具有相同的值,例如driverName:“james”。我想做的是在我的第二次useEffect检查中,如果第一次useEffect中的“name”与“driverName”相同,那么只需执行此“setOrders(res)”; setrenderdata(res);'

我的错误消息:类型上不存在属性“driverName”

我的目标:{ id:“98s7faf”, 伊萨明:是的, 姓名:“詹姆斯”}

我的数组:[{billingName:“特朗普”,driverName:“詹姆斯”},{billingName:“普京”,driverName:“亚历克斯”},{…},{…},{…},{…}]

我的代码:

const[driver,setDriver]=useState();
useffect(()=>{
api.userApi
.apiUserGet()
.然后((res:React.SetStateAction)=>{
控制台日志(res);
设置驱动器(res);
});
},[api.userApi]);
useffect(()=>{
api.caApi
.apiCaGet(请求)
.然后((res:React.SetStateAction)=>{
if(driver?.name==res?.driverName){
设置命令(res);
setrenderdata(res);
控制台日志(res);
}
});

},[api.caApi])您可以在api.userApi中调用api.caApi

 useEffect(() => {
  api.userApi.apiUserGet().then((res1?: User ) => {
  setDriver(res1);
  return api.caApi.apiCaGet(request).then((res?: CaDto[]) 
  => {
    if (res.some(({ driverName }) => driverName === res1?.name)) {
      setOrders(res);
      setRenderedData(res);
      console.log(res);
    }
  });
});
}, [api.caApi, api.userApi]);

您可以在
中调用
api.caApi
,然后在
api.userApi的
中调用
api.caApi
。错误似乎来自您的api结果,而不是来自
驱动程序的
状态。不,它将数组与stringComments进行比较的原因不是为了进一步讨论;这段对话已经结束。