中止过程调用
非官方测试版翻译
本页面由 PageTurner AI 翻译(测试版)。未经项目官方认可。 发现错误? 报告问题 →
默认情况下,tRPC 不会在组件卸载时取消请求。如需启用此行为,可在配置回调中设置 abortOnUnmount 参数。
全局设置
client.tstsimport {httpBatchLink } from '@trpc/client';import {createTRPCNext } from '@trpc/next';import type {AppRouter } from './server/routers/_app';export consttrpc =createTRPCNext <AppRouter >({config () {return {links : [httpBatchLink ({url : '/api/trpc',}),],abortOnUnmount : true,};},});
client.tstsimport {httpBatchLink } from '@trpc/client';import {createTRPCNext } from '@trpc/next';import type {AppRouter } from './server/routers/_app';export consttrpc =createTRPCNext <AppRouter >({config () {return {links : [httpBatchLink ({url : '/api/trpc',}),],abortOnUnmount : true,};},});
按请求设置
您也可以在请求级别覆盖此行为。
client.tstsximport {trpc } from './utils/trpc';import {useRouter } from 'next/router';functionPostViewPage () {constid =useRouter ().query .id as string;constpostQuery =trpc .post .byId .useQuery ({id }, {trpc : {abortOnUnmount : true } });return null;}
client.tstsximport {trpc } from './utils/trpc';import {useRouter } from 'next/router';functionPostViewPage () {constid =useRouter ().query .id as string;constpostQuery =trpc .post .byId .useQuery ({id }, {trpc : {abortOnUnmount : true } });return null;}