TanStackT
TanStack3y ago
9 replies
radical-lime

onError not triggering

Hi!

I know this looks insane. I am chaining multiple calls together (it's very temporary!). The onError: () => deleteFirstThing.mutateAsync(_data.id) isn't triggering. I know the call works. createThing.mutateAsync part returns a 403 atm. Any thoughts?

api.mutateAsync(request, {
                onSuccess: (data) => {
                    const _data = data?.data?.data;

                    
                    if (content.configuration.length > 0 && _data?.id) {
                        const request = generateRequest(_data.id,content.configuration);

                        createThing.mutateAsync(request, {
                            onError: () => deleteFirstThing.mutateAsync(_data.id)
                        });
                    }

                    onSuccess(_data);
                    closeOnSuccess();
                    setIsLoading(false);
                },
                onError: (error) => {
                    const backendErrors = handleBackendErrors(error);

                    setSubmitError(backendErrors);
                    setIsLoading(false);
                }
            });
Was this page helpful?