TL; DR:有沒有一種方法可以爲vscode模塊之間傳遞的類型/變量啓用智能感知?如何在未定義類的模塊中獲取智能感知,只傳遞給?
在這種情況下,我有3個模塊/文件:
Test.js
// Test.js
export default class Test {
constructor() {
this.whatever = {
a: "a",
b: "b"
};
}
someFunc() {
console.log(this.whatever.b);
}
}
OtherTest.js
// OtherTest.js
export default arg => {
arg.someFunc();
};
index.js
//index.js
import Test from "./Test";
import OtherTest from "./OtherTest";
const test = new Test();
OtherTest(test);
運行index.js中的代碼,控制檯打印'b',如預期的那樣。
使用vscode,編輯器如何能夠「知道」在OtherTest.js中傳遞給函數的變量類型,因此我可以讓所有Test類的成員在intellisense中彈出?
我想這應該是在vscode中完成的,因爲類型化參數沒有問題,但除了TypeScript之外,我不知道這不是一個選項。
噢,在index.js文件我從兩個導入的文件獲得智能,但我想從傳遞到OtherTest.js文件中的參數有智能感知:例如,我應該能夠從OtherTest.js中的arg參數中看到someFunc()方法。 –
對不起,我已經更新了答案,不要從第一眼看到問題 – Dolf
JSDoc!這是侵入性最小,最優雅的解決方案。它現在正在工作,只需要引用頂部的類型並在JSDoc中使用它。作品完美無瑕!謝謝! –