中止程序呼叫
預設情況下,tRPC 不會在卸載時取消請求。如果您想要選擇此行為,可以在配置回呼中提供 abortOnUnmount
。
全域設定
client.tsts
// @filename: utils.tsimport {createTRPCNext } from '@trpc/next';export consttrpc =createTRPCNext <AppRouter >({config () {return {// ...abortOnUnmount : true,};},});
client.tsts
// @filename: utils.tsimport {createTRPCNext } from '@trpc/next';export consttrpc =createTRPCNext <AppRouter >({config () {return {// ...abortOnUnmount : true,};},});
每個請求
您也可以在請求級別覆蓋此行為。
client.tsts
// @filename: pages/posts/[id].tsximport {trpc } from '~/utils/trpc';constPostViewPage :NextPageWithLayout = () => {constid =useRouter ().query .id as string;constpostQuery =trpc .post .byId .useQuery ({id }, {trpc : {abortOnUnmount : true } });return (...)}
client.tsts
// @filename: pages/posts/[id].tsximport {trpc } from '~/utils/trpc';constPostViewPage :NextPageWithLayout = () => {constid =useRouter ().query .id as string;constpostQuery =trpc .post .byId .useQuery ({id }, {trpc : {abortOnUnmount : true } });return (...)}