로컬 링크
비공식 베타 번역
이 페이지는 PageTurner AI로 번역되었습니다(베타). 프로젝트 공식 승인을 받지 않았습니다. 오류를 발견하셨나요? 문제 신고 →
localLink은 HTTP를 거치지 않고 애플리케이션에서 직접 tRPC 프로시저 호출을 할 수 있게 해주는 종단 링크입니다.
정보
이 API는 새로운 기능이므로 unstable_ 접두사를 붙였지만 안전하게 사용하셔도 됩니다! 자세히 알아보기.
사용법
tsximport {createTRPCClient ,unstable_localLink } from '@trpc/client';import type {AppRouter } from './server';import {appRouter } from './server';constclient =createTRPCClient <AppRouter >({links : [unstable_localLink ({router :appRouter ,createContext : async () => {// Create your context herereturn {};},onError : (opts ) => {// Log errors here, similarly to how you would in an API routeconsole .error ('Error:',opts .error );},}),],});
tsximport {createTRPCClient ,unstable_localLink } from '@trpc/client';import type {AppRouter } from './server';import {appRouter } from './server';constclient =createTRPCClient <AppRouter >({links : [unstable_localLink ({router :appRouter ,createContext : async () => {// Create your context herereturn {};},onError : (opts ) => {// Log errors here, similarly to how you would in an API routeconsole .error ('Error:',opts .error );},}),],});
기능
-
HTTP 오버헤드 없이 직접 프로시저 호출
-
쿼리, 뮤테이션, 구독에 대한 완벽한 지원
-
자동 오류 처리 및 변환
-
중단 신호(abort signal) 지원
-
타입 안전한 컨텍스트 생성
옵션
localLink은 다음 옵션들을 받습니다:
tstypeLocalLinkOptions <TRouter extendsAnyRouter > = {router :TRouter ;createContext : () =>Promise <inferRouterContext <TRouter >>;onError ?: (opts :ErrorHandlerOptions <inferRouterContext <TRouter >>) => void;} &TransformerOptions <inferClientTypes <TRouter >>;
tstypeLocalLinkOptions <TRouter extendsAnyRouter > = {router :TRouter ;createContext : () =>Promise <inferRouterContext <TRouter >>;onError ?: (opts :ErrorHandlerOptions <inferRouterContext <TRouter >>) => void;} &TransformerOptions <inferClientTypes <TRouter >>;
router
프로시저 호출에 사용할 tRPC router 인스턴스입니다.
createContext
각 프로시저 호출에 대한 컨텍스트를 생성하는 함수입니다. 각 요청마다 호출되며 컨텍스트 객체로 resolve되는 프로미스를 반환해야 합니다.
onError
프로시저 호출 중 오류 발생 시 호출되는 선택적 오류 핸들러로, 오류, 작업 유형, 경로, 입력, 컨텍스트를 인자로 받습니다.
transformer
데이터 직렬화/역직렬화를 위한 선택적 입출력 변환기입니다.
참고 사항
-
HTTP 없이 직접 프로시저 호출이 필요한 시나리오에서 사용 권장
-
대부분의 클라이언트 측 애플리케이션에서는
httpLink나 다른 HTTP 기반 링크 사용 권장 -
쿼리, 뮤테이션, 구독을 포함한 모든 tRPC 기능 지원
-
HTTP 기반 링크와 동일하게 오류 처리 및 변환 자동 수행