VS Code中discord.js模块导出自动补全失效问题求助
VS Code中Discord机器人命令文件自动补全问题的解决办法
安装Discord.js类型声明包
VS Code的自动补全依赖TypeScript类型系统,即便用JavaScript开发,安装对应类型包就能让编辑器识别Discord.js的API类型。运行以下命令安装:npm install @types/discord.js --save-dev用JSDoc统一声明命令类型
不用在每个命令文件里逐个写参数注释,先在项目里定义一个通用的命令类型:/** * @typedef {Object} Command * @property {string} name * @property {string} description * @property {(message: import('discord.js').Message, args?: string[]) => void} execute */之后在每个命令文件的
module.exports上方加上/** @type {Command} */,比如help.js里:/** @type {Command} */ module.exports = { name: 'help', description: '显示帮助信息', execute(message) { // 这里message的自动补全和复杂类型(比如按钮、收集器)都会正常工作 } }这样VS Code就能自动识别execute方法的参数类型,提供完整的API补全。
开启VS Code的JS类型检查
打开VS Code设置,搜索javascript.implicitProjectConfig.checkJs并勾选,这个选项会让编辑器对JS文件启用类型检查,同时基于类型声明提供更精准的补全。另外可以开启javascript.suggest.completeFunctionCalls,增强函数调用时的参数补全提示。可选:切换为ES模块
如果把项目模块系统改成ES模块(在package.json中添加"type": "module",用export default替代module.exports),VS Code的类型推断会更流畅,补全体验会更接近WebStorm。
内容的提问来源于stack exchange,提问作者Jusmejtr
相关产品推荐
相关产品推荐

