microsoft / microsoft/TypeScript
Path based Code navigation to /index.js seems broken
Nessuno ha ancora preso questa issue.
- Lingua principale
- Go
- Stelle
- 111k
- Fork
- 14.3k
- Merge medio
- 2g 4h
- PR unite (30g)
- 132
Descrizione
- VSCode Version: 1.42.1
- OS Version: Mac OS
Steps to Reproduce:
Code navigation seems broken when you import by path and the file is actually in an index.js file.
There are a couple of scenarios relevant to developing in react-native
- import from another package in a monorepo
import SomeComponent from 'common-lib/Router, when the file ispackages/common-lib/src/Router/index.js - import in the same package
import SomeComponent from 'modules/Router, when the file issrc/modules/Router/index.js import SomeComponent from 'modules/Router, when the file is not actually index.jssrc/modules/Router/index.ios.jsandsrc/modules/Router/index.android.js
In general, what works is loading a file name by name (not an index.js file)
What doesn't work is loading a file by path that is actually an index.js, index.native.js, index.ios.js, index.android.js etc file
My code structure is
root
packages
mobile
server
src
server
shared
common-lib
There is some history here that is not ideal. But ok.
packages/server jsconfig.json
{
"compilerOptions": {
"target": "es2017",
"allowSyntheticDefaultImports": false,
"baseUrl": ".",
"paths": {
"common-lib/*": ["../common-lib/*"],
"mobile/*": ["../mobile/*"],
"modules/*": ["./src/shared/modules/*"],
"components/*": ["./src/shared/components/*"],
"router/*": ["./src/shared/router/*"],
"server/*": ["./src/server*"],
"App": ["./src/App"]
}
},
"exclude": ["node_modules", "../../node_modules", "build"]
}
Does this issue occur when all extensions are disabled?: Yes
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia riproducendo i tre casi di importazione con il packages/server jsconfig.json fornito, inclusi index.js e i file index specifici della piattaforma. Traccia la navigazione del codice per le importazioni basate sul percorso e confrontala con le importazioni di file denominati; il lavoro è completato quando la navigazione raggiunge il modulo risolto in ciascuno scenario elencato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- javascript, typescript
- Ambito
- developer-experience, devtools
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100