microsoft / microsoft/TypeScript
(JSDoc, JavaScript) Imported class types by require() are unresolved
オープン
@sandersn がすでに取り組んでいます。
2024年9月20日 から。
Needs Investigation
- 主要言語
- Go
- スター
- 111k
- フォーク
- 14.4k
- 平均マージ
- 1日 19時間
- マージ済み PR(30日)
- 117
説明
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
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
評価
この issue はまだ評価されていません。