Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/43.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript VS代码JS类型提示,来自节点模块的引用类型_Javascript_Node.js_Visual Studio Code_Jsdoc - Fatal编程技术网

Javascript VS代码JS类型提示,来自节点模块的引用类型

Javascript VS代码JS类型提示,来自节点模块的引用类型,javascript,node.js,visual-studio-code,jsdoc,Javascript,Node.js,Visual Studio Code,Jsdoc,我想记录节点模块中定义的类型(discord.js,在我的例子中),以便VS代码可以帮助我自动完成 VS代码支持JSDoc的类型提示,这应该是记录参数客户机的类型的正确方法。然而,当我将鼠标悬停在参数上时,VS Code表示它的类型为any (参数)客户端:任意 这是到目前为止我的代码 module.exports = class Receiver { /** * @param {module:"discord.js".Client} client */ co

我想记录节点模块中定义的类型(
discord.js
,在我的例子中),以便VS代码可以帮助我自动完成

VS代码支持JSDoc的类型提示,这应该是记录参数客户机的类型的正确方法。然而,当我将鼠标悬停在参数上时,VS Code表示它的类型为any

(参数)客户端:任意

这是到目前为止我的代码

module.exports = class Receiver {
    /**
     * @param {module:"discord.js".Client} client
     */
    constructor(client) {
        this.client = client
    }
}

如何使VS代码理解参数的正确类型?它不应该是
any
,而是
Client


PS:我已经安装了
discord.js
模块,并且可以成功地使用它。

如果您
require('discord.js')
并将其分配给一个变量,比如
discord
,那么您应该能够使用
@param{discord.Client}Client
来获得您的类型提示。这确实有效,但我不希望
需要('discord.js')
由于开销,我不会在我的代码中的任何地方使用变量
discord
discord
将是一个未使用的变量),如果您使用的是闭包编译器,那么您应该为discord.js定义一个
extern
;我同意这是正确的解决方案,您应该使用某种类型的树震动,无论是闭包编译器的“高级优化”或汇总,还是网页包配置,以避免文件被捆绑。我认为我可以通过这种方式完成这项工作,但我仍然对是否有“更好”的解决方案感兴趣不需要
require('discord.js')