microsoft / microsoft/TypeScript
(JSDoc, JavaScript) Imported class types by require() are unresolved
Aperta
@sandersn ci sta già lavorando.
Dal 20/9/2024.
Needs Investigation
- Lingua principale
- Go
- Stelle
- 111k
- Fork
- 14.4k
- Merge medio
- 1g 19h
- PR unite (30g)
- 117
Descrizione
Type: Bug
Does this issue occur when all extensions are disabled?: Yes
- VS Code version: Code 1.93.1 (38c31bc77e0dd6ae88a4e9cc93428cc27a56ba40, 2024-09-11T17:20:05.685Z)
- OS version: Linux x64 6.5.0-44-generic
Steps to Reproduce:
With source code below (a.js & b.js), there are two issues present in b.js, A and B.
- Issue.B is triggered without modification.
TS server reportsa.Fooas alias of class Foo, butFooas unresolved. - Issue.A is triggered if any of
value/objfield orpropgetter line is enabled ina.jsexports.
TS server reportsa.Fooas unresolved.
The only pattern to make TS server happy islocalObjline.
IMO diagnostics information should be presented other than the casual /* unresolved */ any message.
// a.js
class Foo {
constructor() {
this.fprop = 123;
}
}
const localObj = { prop: 456 };
exports = module.exports = {
Foo,
// value: 123,
// obj: { prop: 456 },
// get prop() { return 789 },
// localObj,
};
// b.js
const a = require('./a');
const { Foo, } = a;
class Bar {
/** @param {a.Foo} foo */
constructor(foo) {
this.bprop = foo.fprop;
}
}
// Issue.A: a.Foo unresolved, .fprop is any
/** @param {a.Foo} foo */
function bar1(foo) {
foo.fprop;
}
// Issue.B: Foo unresolved, .fprop is any
/** @param {Foo} foo */
function bar2(foo) {
foo.fprop;
}
VS Code version: Code 1.93.1 (38c31bc77e0dd6ae88a4e9cc93428cc27a56ba40, 2024-09-11T17:20:05.685Z)
OS version: Linux x64 6.5.0-44-generic
Modes:
A/B Experiments
vsliv368:30146709
vspor879:30202332
vspor708:30202333
vspor363:30204092
vscoreces:30445986
vscod805cf:30301675
binariesv615:30325510
vsaa593:30376534
py29gd2263:31024239
c4g48928:30535728
azure-dev_surveyone:30548225
a9j8j154:30646983
962ge761:30959799
pythongtdpath:30769146
welcomedialogc:30910334
pythonnoceb:30805159
asynctok:30898717
pythonregdiag2:30936856
pythonmypyd1:30879173
2e7ec940:31000449
pythontbext0:30879054
accentitlementst:30995554
dsvsc016:30899300
dsvsc017:30899301
dsvsc018:30899302
cppperfnew:31000557
dsvsc020:30976470
pythonait:31006305
dsvsc021:30996838
9c06g630:31013171
pythoncenvpt:31062603
a69g1124:31058053
dvdeprecation:31068756
dwnewjupyter:31046869
impr_priority:31102340
refactort:31101459
ccplti:31098112
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.
Valutazione
Questa issue non è ancora stata valutata.