js 在vscode中让自己的api获得类型提示,成员补全的能力
我的项目不是正经的js项目,它经常需要单个文件打开,并且调用接口来自另一种语言实现
创建API.d.ts文件
为接口自动生成类型标记文件,格式如下
这里的类型来自另一门语言自动生成,不是js的类型,不影响
declare namespace API { /** *成员的注释 */ const Age: String; var Name: String; function Print(str: String): String; }
在需要的文件上引用
/// <reference path="./API.d.ts" />
如果你希望得到类型检查提示,就需要把一些和js可通用的类型变成js的类型
比如c# 的String 和js 的 string,再加上
//@ts-check
在函数上使用jsdoc注释
标记之后,input这个函数参数被视为API类型
/** * @param {API} input */ this.OnInitialize = (input) => { }
补充
可以在工作区配置jsconfig.json
来全局引用类型文件
{ "compilerOptions": { "typeRoots": ["*.d.ts"] } }
在vscode设置中搜索checkjs,来全局启用js使用ts的类型检查
这样就可以避免在每个文件中标记
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步