[英]VS 2017 Intellisense for parameters of closures with javascript
我的TypeScript生成一個.d.ts文件。 這是TS項目的完美選擇:
declare function myGlobal(html: string): string;
declare module myHmi {
class bla {
static myStatic(bla: string): string;
}
}
但是其他團隊正在使用JS,並希望使用我們不錯的類型。 他們在項目內部有.d.ts文件。 VS2017在新的JS語言服務(Salsa)中檢測到它。
var myHmi;
(function (myHmi) {
// Here VS2017 knows myGlobal()
// Here VS2017 detected myHmi as any. So it has no knowledge of myHmi.bla.myStatic()
main code...
})(myHmi || (myHmi = {}));
// Here VS2017 knows myGlobal()
// Here VS2017 knows myHmi.bla.myStatic()
我們可以使用提示(@jsdoc魔術嗎?)來告訴VS,內部myHmi是外部myHmi的擴展嗎?
編輯:幾天后報告為https://github.com/Microsoft/TypeScript/issues/21877
我從微軟那里得到了答案。 這有效:
(function (myHmi) {
// Here VS2017 knows myGlobal()
// Here VS2017 knows myHmi.bla.myStatic()
main code...
})(myHmi);
// Here VS2017 knows myGlobal()
// Here VS2017 knows myHmi.bla.myStatic()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.