volar 类型推导失效主因是 volar.takeovermode 未启用或残留 vue-template-compiler;需确保 vue ≥3.3、@vue/language-core 已安装、.vue 语言模式为 vue,并配置 baseurl 和 paths。

Vue 3 项目里 defineProps 没提示、ref 类型是 any、@/components 跳转失败——不是插件没装,是 Volar 没接管或配置卡在关键几处。
为什么 Volar 的类型推导不生效
常见错误现象:props.msg. 按点没补全;const count = ref(0) 鼠标悬停显示 any;defineProps 泛型写法完全没响应。
- 检查
package.json是否残留vue-template-compiler:Volar 看到它会强制降级为兼容模式,直接关掉类型推导 - 确认项目中
vue版本 ≥ 3.3,且已安装最新版@vue/language-core(Volar 依赖它做 TS 类型服务) -
settings.json中必须启用"volar.takeOverMode": true,否则 TypeScript 语言服务仍走原生路径,模板内类型无法穿透 - 确保
.vue文件语言模式设为vue(右下角点击切换),不是html或typescript
Path Intellisense 在 Vue 3 + Vite 里跳转失效
使用场景:写 import { useAuth } from '@/hooks/useAuth',Ctrl+Click 却跳进 node_modules/@types/xxx 或报“no definition found”。

