mirror of
https://github.com/ArthurDanjou/trpc-nuxt.git
synced 2026-01-14 20:19:33 +01:00
import useAsyncData and useState from #app
This commit is contained in:
@@ -6,6 +6,8 @@ import type {
|
||||
import { createFlatProxy, createRecursiveProxy } from '@trpc/server/shared'
|
||||
import { hash } from 'ohash'
|
||||
import type { DecoratedProcedureRecord } from './types'
|
||||
// @ts-ignore: nuxt internal
|
||||
import { useAsyncData, useState } from '#app'
|
||||
|
||||
/**
|
||||
* Calculates the key used for `useAsyncData` call
|
||||
@@ -27,7 +29,7 @@ export function createNuxtProxyDecoration<TRouter extends AnyRouter>(name: strin
|
||||
const pathCopy = [name, ...opts.path]
|
||||
|
||||
// The last arg is for instance `.mutate` or `.query()`
|
||||
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
||||
|
||||
const lastArg = pathCopy.pop()!
|
||||
|
||||
const path = pathCopy.join('.')
|
||||
@@ -44,9 +46,7 @@ export function createNuxtProxyDecoration<TRouter extends AnyRouter>(name: strin
|
||||
* Custom useAsyncData to add server error to client
|
||||
*/
|
||||
async function useAsyncDataWithError(queryKey: string, cb: any, asyncDataOptions: any) {
|
||||
// @ts-ignore: nuxt internal
|
||||
const serverError = useState(`error-${queryKey}`, () => null)
|
||||
// @ts-ignore: nuxt internal
|
||||
const { error, data, ...rest } = await useAsyncData(queryKey, cb, asyncDataOptions)
|
||||
|
||||
if (error.value && !serverError.value)
|
||||
|
||||
Reference in New Issue
Block a user