Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

vue-query: UseQueryOptions no longer assignable to queryClient.query() since 5.103.0

Ouverte
#12,452 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
Une demi-journée
Accessibilité débutants
67/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
typescript

Piste de recherche

Start with the QueryClient overloads for query() and the deprecated prefetchQuery / fetchQuery in the Vue Query adapter, then compare their MaybeRefDeep<...> query function types with UseQueryOptions and the SkipTokenForUseQuery change from #11439. Reproduce the TS2769 error using the issue’s snippet with TypeScript 6.0.3 and Vue Query 5.103.0 or newer. Done when the annotated UseQueryOptions<number> is accepted by these methods and the reported regression is covered by a type check.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Describe the bug

Since 5.103.0, a value typed as UseQueryOptions is no longer accepted by queryClient.query(). It fails with TS2769. The deprecated prefetchQuery / fetchQuery fail the same way.

#11439 added type SkipTokenForUseQuery = symbol to queryFn in UseQueryOptions. The MaybeRefDeep<...> overloads on QueryClient still expect typeof skipToken, so a plain symbol no longer fits. Options inferred through queryOptions() are fine. Only values annotated or cast as UseQueryOptions break, which is what code generators emit.

Your minimal, reproducible example

https://www.typescriptlang.org/play/?#code/JYWwDg9gTgLgBAbzgRQK4FMoE8DCAbYdAOxgBo4Ysx04BVAZ3TUywHkwZgIj64BfOADMoEEHADkAARgBDHrIDGAawD0ANwwBaAI4Zs4gFAGAJugV4ZUGgu714EDlx4AuOo2bZ2nWwB4iqEAAjTAA+Ixt5OF0WfEISOABeOCJ0AHcUPVwCYhgACgBKIxUVOBxRMGA8dF5uOABWADoARgAGACYGlvIAFQBlNoB2ADYATjh6YCIFGkbWgGZOgzUIYGMozNichujsXIdvHkKgA

Steps to reproduce
import { QueryClient, type UseQueryOptions } from '@tanstack/vue-query'

declare const options: UseQueryOptions<number>

const queryClient = new QueryClient()

// Compiles on 5.102.0, TS2769 since 5.103.0
void queryClient.query(options)
  1. Install @tanstack/[email protected] or newer
  2. Type-check the snippet
  3. See TS2769
Expected behavior

A UseQueryOptions value is accepted by queryClient.query(), as in 5.102.0.

How often does this bug happen?

Every time

Platform

Type-check only (tsc / vue-tsc), macOS

Tanstack Query adapter

vue-query

TanStack Query version

v5.103.0 (still present in v5.105.0)

TypeScript version

v6.0.3

Additional context

Found through Orval's generated vue-query prefetch*Query helpers, which cast their options to UseQueryOptions before calling queryClient.query().

Langage dominant
TypeScript
Étoiles
50.5k
Forks
4.2k
Merge moyen
6 h 27 min
PR mergées (30 j)
614

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de TanStack/query

Toutes les issues de TanStack/query

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.