vs code 原生支持代码片段,无需插件即可快速生成 vue3 组件模板;需通过 ctrl+shift+p 调出命令面板,选择“preferences: configure user snippets”并新建全局 vue3.json 文件,配置 prefix 为 vue3、body 含 script setup/template/style 结构及合理光标跳转位置($1、$2、$3、$0),默认 style 使用 lang="css" 确保兼容性,且须在新创建的 .vue 文件中触发。

VS Code 原生支持代码片段,不需要装任何插件就能快速生成 Vue3 组件模板。所谓“自定义插件”是个常见误解——真正高效、稳定、跨项目复用的方式,是直接配置 vue3.json 这类用户代码片段文件。
怎么创建全局 Vue3 片段文件
按 Ctrl+Shift+P(Windows/Linux)或 Cmd+Shift+P(macOS),输入 Preferences: Configure User Snippets,选 New Global Snippets file,起名 vue3.json 即可。这个文件会存放在你的 VS Code 用户配置目录下,登录账号后自动同步,换电脑也不丢。
不建议为 .vue 语言单独配片段,因为:
- 全局片段在新建空
.vue文件里一样能触发 -
.vue语言作用域有时识别不稳定(尤其没装 Volar 时) - 团队协作中,全局片段更易统一管理
为什么 prefix 用 vue3 而不是 vue
用 vue 容易和旧版 Vue2 模板、第三方插件的片段冲突。比如你装了 Volar 或 Vetur,它们自带的 vue 片段可能优先级更高,导致你写的不生效。
推荐明确区分:
-
prefix设为vue3:专注 Composition API +setup语法糖 -
prefix设为vue3-ts:带lang="ts"和基础类型导入 - 避免用
v、vc这类短前缀——容易误触,也难回忆
实际敲 vue3 + Tab,比猜缩写快得多。
递归分析 Vue 项目组件依赖,从入口文件生成组件层级图,支持 Vue 2/3,输出组件名、文件路径和属性。适用于分析组件结构、排查依赖或了解项目架构。
body 里怎么安排光标跳转位置
别把 $0 直接扔在末尾。合理利用 $1、$2、$3 才能真正提升效率:
-
$1放在<script setup></script>内第一行:方便立刻写ref、reactive -
$2放在<template></template>的<div> 内部:光标直接进结构区 <li> <code>$3放在<style scoped></style>里:样式编辑不用再手动跳 - 最后用
$0放在后面:收尾自然,不卡住
示例片段节选:
"body": [ "<script setup lang="ts">", "$1", "</script>", "", "<template>", " <div>$2</div>", "</template>", "", "<style scoped lang="scss">", "$3", "</style>", "$0" ]
scoped 样式和预处理器怎么设才不踩坑
很多人一上来就写 lang="less" 或 lang="scss",结果新建组件报错:“Module parse failed”。这是因为项目没配对应 loader。
稳妥做法:
- 默认用
lang="css",确保 100% 兼容 - 如果团队强制用 SCSS,就把
lang="scss"写死在片段里,但必须同步在项目里装好sass和sass-loader - 别写
scoped却漏掉分号或括号——VS Code 不校验片段内容,错了一建就是全项目错误模板 - 想动态推导组件名?用
${TM_FILENAME_BASE}变量,但注意它不会自动 PascalCase,得配合正则转换(高级用法,新手先跳过)
最常被忽略的一点:片段保存后,必须新建一个 .vue 文件(不能是已存在的、没语法高亮的空白文件),否则前缀不触发——VS Code 需要文件语言模式激活才能加载对应片段。










