Alt + F7 是查找函数所有调用位置的最稳最快方案,专为“在哪被用了”设计;Ctrl + Alt + H 用于调用层级分析,语义不同且结果可能不全。
直接按
,光标停在函数名上,就能列出所有调用位置——这是最稳、最快、不依赖运行时的方案。
为什么不是 Ctrl + Alt + H?
是看「调用层级(Call Hierarchy)」,它建模的是“谁调了我、我调了谁”的结构关系,适合分析调用链路;而你要的是“在哪被用了”,属于引用定位问题。
才是专为这个场景设计的「Find Usages」功能,语义更准、结果更全、响应更快。
误用
容易只看到部分调用,尤其当函数有重载、泛型或跨模块调用时,它可能折叠或标记为
默认包含 read/write/declaration,并支持按类型过滤(点右上角漏斗图标)
在 Vue/React 模板中,
这类绑定默认不被识别,需手动勾选
(但会引入噪声)
光标位置和符号识别很关键
结果为空?大概率不是功能失效,而是 WebStorm 没认出你点的是一个可引用的符号。
WebStorm Mac版
好用的JavaScript开发工具
下载
光标必须落在函数名的任意一个字符上——不能在括号里、不能在空格后、不能在注释或字符串中
import 路径写错、大小写不一致、Webpack 别名未配置
的
和
,都会导致引用无法索引
TypeScript 中如果函数没显式标注参数或返回类型,类型推导失败,
可能只搜到字面匹配,而非语义引用
局部函数(非 export)只在当前文件内搜索;导出函数才会跨文件扫描
结果窗口里怎么看有用信息
弹出的
窗口分三栏:左侧是文件路径,中间是行号+代码片段,右侧是匹配类型标记。
表示读取(如
或
)
表示赋值或重定义(如
或
)
出现在你点的就是声明本身时——换到调用处再试一次
点击某条结果,编辑器自动跳转并高亮;双击可在新标签页打开对应文件
动态调用(
、
、
构造)永远不在
范围内,这类必须靠调试时看
面板的真实栈。别指望静态分析覆盖运行时拼接的逻辑。
Alt + F7Ctrl + Alt + HAlt + F7Ctrl + Alt + HUnknownAlt + F7@click="handleSubmit"Search in comments and stringsjsconfig.jsonbaseUrlpathsAlt + F7Findreadconsole.log(fn)obj.method = fnwriteconst fn = () => {}fn = otherFndeclarationobj[methodName]()evalFunction()Alt + F7Frames