Auto Rename Tag 默认不支持 Vue 自定义组件标签重命名,需在 settings.json 中显式添加 "vue" 到 activationOnLanguage;移动 .vue 文件后 import 路径不会自动更新,应使用 JavaScript Refactor 插件的 Update imports 功能。

Vue项目里重命名组件名,闭合标签不跟着变?
不是插件失效,是 Auto Rename Tag 默认只认标准 HTML 标签结构,对 .vue 文件里的自定义组件名(如 <mybutton></mybutton>)默认不响应。它只处理开闭标签本身,不解析 setup 或 script 区域里的变量名。
实操建议:
- 在
settings.json中显式启用 Vue 支持:"auto-rename-tag.activationOnLanguage": ["html", "vue", "javascriptreact"] - 确保文件右下角语言模式显示为
Vue,不是HTML或Plain Text - 别指望它改
import { useDialog } from "@/hooks"里的useDialog—— 那得靠JavaScript Refactor或 VS Code 原生rename symbol
移动 .vue 文件后,几十处 import 全报错?
VS Code 原生不修复 import 路径,手动改极易漏、大小写错、斜杠方向反。尤其在 @/components/Button.vue 移到 @/ui/Button.vue 后,旧引用不会自动更新。
实操建议:
- 装
JavaScript Refactor(作者 micnic),它提供Update imports for moved file功能,移动文件后右键触发即可批量修正 - 禁用
Auto Import类插件,它们常和语言服务冲突,导致重命名卡死或路径更新失败 - 移动前先确认项目有
jsconfig.json或tsconfig.json,且含"include": ["**/*.vue"],否则 LSP 无法索引模板中的导入关系
想把 Vue2 的 export default {} 自动转成 Vue3 setup?
没有插件能 100% 安全全自动转换,但 Glean 和 Vue VS Code Extension Pack 可覆盖常见模式:提取 data 为 ref、methods 转函数、computed 拆成 computed() 调用。
Vue 3 组合式 API 与 最佳实践,涵盖代码组织、useXxx 模式、组合式函数设计、Store 集成、响应式优化及功能抽取。
实操建议:
-
Glean对<template></template>内的指令(如v-model)识别较好,但遇到v-model:foo.sync这类旧语法会跳过,需人工补全 - 转换前先运行
eslint --fix清理掉no-unused-vars等干扰项,否则插件可能因语法错误中断 - 别直接在生产分支上跑全量转换;先挑单个组件试,重点检查
watch、provide/inject和生命周期钩子迁移是否完整
重构时想确认某个 defineProps 是否被多处使用?
Find All References(Shift+F12)经常返回空,不是代码没被调,是 Vue 单文件组件的 props 定义未被语言服务充分索引。
实操建议:
- 在
jsconfig.json或tsconfig.json中加"compilerOptions": {"allowJs": true, "checkJs": true}(JS 项目)或确保"vueCompilerOptions"存在(TS 项目) - 右下角语言模式切到
Vue后,等状态栏出现“Loading…”消失再查,首次索引可能耗时 10–30 秒 - 如果仍漏结果,临时在
script setup顶部加一行// @ts-ignore,强制触发类型推导重载
Vue 的 setup 语法糖、defineProps 类型推导、跨文件组件依赖链,这些都让重构边界比纯 JS 更模糊。真正安全的批量操作,永远建立在语言服务完整索引 + 插件明确适配 Vue SFC 结构的基础上,而不是依赖“看起来能跑”。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










