Microsoft/TypeScript

Go to definition for TypeScript literal strings

Open

#49,033 opened on May 9, 2022

View on GitHub
 (14 comments) (78 reactions) (0 assignees)TypeScript (6,726 forks)batch import
Domain: LS: Symbol NavigationExperience EnhancementHelp WantedSuggestion

Repository metrics

Stars
 (48,455 stars)
PR merge metrics
 (Avg merge 6d 17h) (9 merged PRs in 30d)

Description

Feature request

Go to definition for TypeScript literal strings.

Example

Given the below code, I would really like to be able to jump to the definition of the 'foo':

const obj = {
  foo: 'bar' as const,
  hello: 'world' as const,
}

function get<T, K extends keyof T>(obj: T, path: K): T[K] {
  return obj[path]
}

const val = get(obj, 'foo')
//                   👆👆👆 Is there a way of make jump to definition work here?
//                         I really want to CMD+click `'foo'` and jump to line #2

Link to TypeScript playground.

WebStorm Demo of the same code

In WebStorm, it actually works how I wish that VSCode worked, here's a video:

https://user-images.githubusercontent.com/459267/167470744-80bdd8af-b7fa-444a-84d5-7e3f83e7e003.mov

Contributor guide