Vscode 可用属性 intellisense 在参数为字符串的函数中使用 javascript 或 typescript
Posted
技术标签:
【中文标题】Vscode 可用属性 intellisense 在参数为字符串的函数中使用 javascript 或 typescript【英文标题】:Vscode available properties intellisense using javascript or typescript in a function which's parameter is a string 【发布时间】:2021-12-07 20:54:27 【问题描述】:看这里。
对于addEventListener函数的第一个参数,vscode给了我几个内置的建议
我应该如何在我的 javascript 函数中使用它?
可能是使用 Jsdoc 或 typescript 等。
【问题讨论】:
【参考方案1】:您始终可以通过将鼠标悬停在 addEventListener
方法或 ctrl + click
上转到所有定义都存在的 lib.dom.d.ts
文件中的定义来查看 vscode 用于智能感知的内容。
通过上述操作,您将看到 vscode 使用了一个名为 WindowEventMap
的类的键。
所以你的函数接受事件侦听器名称可能是
function myFunc(event: keyof WindowEventMap): void
.d.ts
文件包含 java 脚本代码的类型。这就是您如何从发布到 npm 的某些包中获得类似问题中的类型的类型。
别人怎么用你的javascript函数?
-
您是否正在创建一个可供其他人使用的 javascript 库?然后在开发过程中使用 typescript 并让 typescript 为您的代码生成
.d.ts
文件。或者,如果您不使用打字稿进行开发,则必须创建自己的声明。并使用这些 .d.ts
文件发布您的库。有关示例,请参阅 DefenitelyTyped
项目。
同一项目中的文件使用此功能?如果您使用我在上面的代码 sn-p 中提到的打字稿,那么智能感知将自动显示给用户。否则,如果您使用的是 javascript,那么您仍然可以尝试创建 .d.ts
文件并在您的 ts 配置中引用它们(我自己没有尝试过)。
【讨论】:
好的,那我应该如何使用 jsdoc 将它添加到我的 JS 文件中 参考我的更新答案以上是关于Vscode 可用属性 intellisense 在参数为字符串的函数中使用 javascript 或 typescript的主要内容,如果未能解决你的问题,请参考以下文章
Intellisense 在 C# 中使用 Visual Studio Code 进行可用的“使用/导入”
VSCode 使用自定义 webpack 解析自动完成 javascript 导入的对象
Path intellisense不带后缀解决方案(VSCode插件)
Intellisense 在 VSCode 中不起作用 - OmniSharp 错误