microsoft / microsoft/TypeScript

How to jump to the definition of a template string type in VSCode?

Abierto
#55,819 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Domain: LS: Symbol Navigation Experience Enhancement Help Wanted Suggestion
Lenguaje dominante
Go
Estrellas
111k
Forks
14.4k
Merge medio
1 d 19 h
PR fusionados (30 d)
117

Descripción

  • VS Code Version: 1.82.2
  • OS Version: win11

I’m using TypeScript 5.2.2 and VSCode 1.82.2, and I have a problem with jumping to the definition of a template string type.

Here is my code:

type Test<T extends object> = {
  [K in keyof T]: () => void
} & {
  [K in keyof T as `${string & K}Sync`]: () => void
}

const a = {
  getValue() {}
}

const b = {} as Test<typeof a>

b.getValueSync()
b.getValue()

I want to jump to the definition of the Test type, but when I press F12 on getValueSync, nothing happens. However, when I press F12 on getValue, it works fine and jumps to the definition of a.getValue.

I wonder if this is a bug or a limitation of VSCode or TypeScript, and how can I solve it. Any help or suggestion would be appreciated. Thank you.

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Reproduce el comportamiento de F12 indicado en TypeScript 5.2.2 y VS Code 1.82.2 usando el ejemplo de tipo mapeado mediante template literal del issue. No se indica ningún archivo del repositorio ni ninguna prueba; sigue la solicitud de definición del servicio de lenguaje para getValueSync y, después, verifica el comportamiento frente a getValue y documenta o prueba el resultado esperado.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
typescript, vscode
Área
devtools
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.