使用typescript响应查询

使用typescript响应查询,typescript,react-query,Typescript,React Query,我想用react guery从这个函数中获取一些sata export const quotaReservationRefundServiceBankAccount = ( id: string, bankAccountInformation: IBankAccountInformation, quotaLegal?: string, ): Promise<Response> => { const url = `${appSettings.bffUrl}/api

我想用react guery从这个函数中获取一些sata

export const quotaReservationRefundServiceBankAccount = (
  id: string,
  bankAccountInformation: IBankAccountInformation,
  quotaLegal?: string,
): Promise<Response> => {
  const url = `${appSettings.bffUrl}/api/pregnancies/quotareservations/${id}/bankaccount/refund`;
  const body: IRefundQuotaReservationRequest = {
    language: appSettings.language,
    bankAccountInformation,
    legalDepartmentShortCode: quotaLegal || "",
  };
  return post(url, body);
};
export const quotaReservationRefundServiceBankAccount=(
id:string,
bankAccountInformation:IBankAccountInformation,
quotaLegal?:字符串,
):承诺=>{
const url=`${appSettings.bffUrl}/api/preventions/quotareservations/${id}/bankaccount/return`;
常量正文:IRefundQuotaReservationRequest={
语言:appSettings.language,
银行账户信息,
legalDepartmentShortCode:Quotealegal | | |“”,
};
返回帖子(url、正文);
};
我得到了这个车费:

  const { data: testData, isLoading, error } = useQuery<string, IBankAccountInformation, string | undefined>(["bankRefundResponse",  quota?.reservation || "Quota.reservation missing", bankAccountInfo, quota.legal], quotaReservationRefundServiceBankAccount, {

      });
const{data:testData,isLoading,error}=useQuery([“BankReturnResponse”,quota?.reservation | |“quota.reservation缺失”,bankAccountInfo,quota.legal],quotareservationReturnServiceBankAccount{
});
Typescript给了我以下错误:

类型为“”的参数(id:字符串,bankAccountInformation: IBankAccountInformation,quotaLegal?:字符串|未定义)=> “承诺”不可分配给类型的参数 “查询函数”.ts(2345)


参数通过queryKey传递给queryFn,因此您可以销毁queryKey(queryFn的第一个参数),或者只使用内联函数:

useQuery(["key", id, bankAccountInformation, quota], () => quotaReservationRefundServiceBankAccount(id, bankAccountInformation, quota))

它给了我一个错误:类型“Promise”不能赋值给类型“string | Promise”。类型“Promise”不可分配给类型“Promise”。类型“Response”不可分配给类型“string”。ts(2322)类型。d.ts(7,89):预期类型来自此签名的返回类型。可能是因为
quotareservationReturnServiceBankAccount
返回承诺,但您已键入useQuery。您是否尝试过像我上面的示例中那样使用useQuery而不注释泛型?看起来很有效。在承诺之后,我将如何获得数据。我需要json()我猜是响应。这很可能发生在
quotareservationReturnServiceBankAccount
中<代码>返回帖子(url,body)。然后(response=>response.json());如果其中一个参数可能未定义,您该怎么办。然后你能停止查询吗?现在,您无法在条件中响应查询。