You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在已安装的npm包中查找函数定义?以useForm为例

如何找到react-hook-form中useForm的函数实现而非类型定义

为什么默认跳转到类型文件?

react-hook-form发布的npm包默认只包含编译后的生产代码和类型定义文件(.d.ts),VSCode的TypeScript解析逻辑会优先识别这些类型文件,所以点击「Go To Definition」只会跳转到useForm.d.ts。

两种解决办法:

  • 手动直接查找:打开项目的node_modules/react-hook-form/src目录,找到useForm.ts文件,里面就是useForm的完整函数签名和实现代码。这是最直接的方式,大部分情况下都能用。
  • 配置VSCode让它优先解析源码:在项目根目录的.vscode/settings.json中添加以下配置,让TypeScript优先尝试解析包内的源码文件:
{
  "typescript.resolvePackageJsonExports": true,
  "typescript.preferences.resolvePackageJsonExports": true,
  "typescript.preferences.preferTypeOnlyAutoImports": false
}

配置后重启VSCode,再尝试「Go To Definition」,如果react-hook-form的package.json里的exports字段包含了源码路径,就能直接跳转到useForm.ts;如果没配置exports,还是得用手动查找的方式。

内容的提问来源于stack exchange,提问作者vietan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 07:22:12