Es mi API:
type UploadVideoParams = { videofile: File channelId: string | number name: string } const uploadVideo = ( { videofile, channelId, name }: UploadVideoParams, onUploadProgress: (...args: any) => void ) => { const formData = new FormData() appendFormDataIfTruthy(formData, 'videofile', videofile) appendFormDataIfTruthy(formData, 'channelId', channelId) appendFormDataIfTruthy(formData, 'name', name) const source = CancelToken.source() return [ axiosInstance({ url: '/videos/upload', method: 'POST', headers: { 'Content-Type': 'multipart/form-data' }, data: formData, onUploadProgress, cancelToken: source.token, }).then(res => res.data), (msg: string) => { source.cancel(msg) }, ] }¿Cómo puedo implementar un enlace de consulta de reacción para esta API? Usamos mecanografiado, react v17 y react-query v3.18.1.
Agrego esta mutación pero obtengo este error en la API:
export const useUploadMutation = () => useMutation( VideosService.uploadVideo.name, VideosService.uploadVideo as unknown as MutationFunction<unknown, UploadVideoParams>, { onSuccess: () => { queryClient.invalidateQueries([VideosService.getVideos.name]) queryClient.invalidateQueries([VideosService.getChannelVideos.name]) }, } )pero mi API tiene este error:
const cancelUpload: cualquier Tipo 'void | [Promise, (msg: string) => void]' debe tener un método 'Symbol.iterator' que devuelve un iterator.ts(2488)