oljimenez
oljimenez2y ago

NextJS and createProxySSGHelpers context type error

Hi guys, do you guys know a better way of clean this typescript error? createProxySSGHelpers({ router: appRouter, ctx: await createContext({ //this cause type error because ctx.req and ctx.res from getServerSideProps or getStaticProps are diferent from NextApiRequest and NextApiResponse req: ctx.req, res: ctx.res, }), transformer: superjson, }); i ended doing this export const trpcServerContext = async (ctx: NextServerContext) => createProxySSGHelpers({ router: appRouter, ctx: await createContext({ req: ctx.req as NextApiRequest, res: ctx.res as NextApiResponse, }), transformer: superjson, }); but maybe exist a better way.
2 Replies
Unknown User
Unknown User2y ago
Message Not Public
Sign In & Join Server To View
julius
julius2y ago
Typing your createContext accordingly i think should work
export async function createContext(
opts:
| {
req: CreateNextContextOptions['req'];
res: CreateNextContextOptions['res'];
}
| {
req: NextApiRequest;
res: NextApiResponse;
},
) {
// for API-response caching see https://trpc.io/docs/caching

return await createContextInner({});
}
export async function createContext(
opts:
| {
req: CreateNextContextOptions['req'];
res: CreateNextContextOptions['res'];
}
| {
req: NextApiRequest;
res: NextApiResponse;
},
) {
// for API-response caching see https://trpc.io/docs/caching

return await createContextInner({});
}