在 Node / VS Code 中添加变量类型声明和自动完成

Adding variable type declarations and autocompletion in Node / VS Code

我目前正在制作一个 npm 库,想知道其他人是如何在 VS Code 中实现自动完成和变量类型声明的。

例如,我可以键入 httpconnection.addListener(,然后我得到一个弹出窗口,告诉我第一个参数是事件类型,第二个参数是函数 void 类型,依此类推。

这也适用于需要传递对象的函数,例如 mysql.createConnection({});。如果我按 CTRL + 空格键,我现在知道这个对象 必须 有什么属性以及它 可以 有什么属性。

我知道 JavaScript 是动态类型的,没有固定的类型声明,而是在运行时进行转换,但其他人是如何实现的?

我尝试使用打字稿括号 (variable<Object>) 和我在某处找到的其他东西 (variable?: Object) 添加变量类型,但两者都不起作用。

I least want the autocomplete to show people what properties / attributes they must and what properties they can enter and of what type they should be.

我该如何实现?能不能直接把JS文件转成TS文件发布到npm上就没有问题了?

提前致谢!

你可以做的一件事是使用 JSDOCs,至少我是这样做的。

喜欢我添加的功能,

/**
 * @param {string} somebody
 */
function sayHello(somebody) {
    alert('Hello ' + somebody);
}

或者在变量声明之前加一个

/**
 * @type {[]}
 */
const x = someRequiredVariable

您可以使用自定义 ES6 类名作为类型,而不仅仅是原始类名。