vscode配置快速生成vue2和vue3模板

vscode配置快速生成vue2和vue3模板

1. 打开首选项->配置用户代码片段(Snippets)

在这里插入图片描述

2. 编辑vue.json,这个文件不存在的话就选择vue便会创建一个

在这里插入图片描述

3. 添加vue2和vue3页面创建模板:例如以下,然后保存

{
	// Place your snippets for vue here. Each snippet is defined under a snippet name and has a prefix, body and 
	// description. The prefix is what is used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
	// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders. Placeholders with the 
	// same ids are connected.
	// Example:
	// "Print to console": {
	// 	"prefix": "log",
	// 	"body": [
	// 		"console.log('$1');",
	// 		"$2"
	// 	],
	// 	"description": "Log output to console"
	// }
	"Print to v3": {
		"scope": "vue", //指定文件类型,只有.vue文件可以触发
		"prefix": "vue3",
		"body": [
		   "<template>",
			  "<div class=\"container\">",
			  "$2",
              "</div>",
			"</template>",
			"",
			"<script lang=\"ts\" name=\"$1\" setup>",
			  "import { } from 'vue'",
			  "import { } from 'vue-router'",
			  "$3",
			"</script>",
			"",
			"<style lang=\"scss\" scoped>",
			"$4",
			"</style>"
		],
		"description": "vue3:快速搭建.vue单文件组件模板"
	},
	"Print to v2": {
		"prefix": "vue",
		"body": [
			"<template>",
			"  <div class=\"$1\">",
			"    $3",
			"  </div>",
			"</template>",
			"",
			"<script>",
			"export default {",
			"  name: '$2'",
			"}",
			"</script>",
			"",
			"<style lang=\"less\" scoped>",
			"",
			"</style>",
			""
		],
		"description": "vue2:快速搭建.vue单文件组件模板"
	}
}

4. 创建页面,输出vue便会提示可快速创建vue2或vue3页面,点击tab便会生成模版

在这里插入图片描述
vue2:
在这里插入图片描述
vue3:
在这里插入图片描述

<think>嗯,用户想了解VSCode新建前端文件默认代码设置模板的方法。用户的问题很具体,但可能不太熟悉VSCode的代码片段功能机制。需要解释清楚两个概念的区别:内置默认模板(不可自定义)用户自定义模板(可全局生效)。 从引用内容看,用户主要关注vue文件模板(引用1、2、4),但也提到html模板(引用3),说明可能需要通用解决方案。用户提供的引用5特别有价值,它展示了模板变量的使用方法,这个应该重点强调。 用户可能遇到的实际痛点是:每次新建.vue文件都要手动写基础结构,或者团队需要统一模板规范。深层需求其实是提升前端开发效率,减少重复劳动。 需要区分说明两种设置路径: 1 针对特定文件类型(如.vue)的设置:通过vue.json实现,但只在对应文件中生效 2 全局设置:通过任意文件中输入触发词都能生成 特别要注意提醒用户:VSCode本身没有修改"真正默认模板"的选项,所有"默认"效果其实都是通过用户片段模拟的。比如原生html输入!生成模板其实是Emmet插件提供的,这个需要单独配置(如引用3所示)。 在操作步骤上要强调关键点: - 必须安装Vetur扩展才能识别.vue文件(引用2) - vue.json的存放位置会影响生效范围(用户级vs项目级) - 模板变量${CURRENT_DATE}等是提升效率的关键(引用5) 用户可能是前端新手,所以示例模板要包含最基础但完整的结构:template/script/style三部分,同时展示如何插入文件名、日期等动态变量。安全起见,script部分建议用options API写法,因为composition API可能对新手不友好。 最后要提醒常见陷阱:缩进问题(引号内换行符)、变量大小写敏感、生效范围控制。如果用户需要团队共享配置,可以提示导出snippets文件的方法。 </think>以下是VSCode中设置新建前端文件默认代码模板的完整解决方案,分为全局模板文件类型专属模板两类: --- ### 一、通用前端文件模板设置(支持HTML/Vue等) #### 方法1:全局代码片段(任何文件类型生效) 1. **打开命令面板** `Ctrl+Shift+P` > 输入 `"Preferences: Configure User Snippets"` > 选择 `"New Global Snippets File"` 2. **新建全局模板** 输入文件名如 `frontend-template`,粘贴: ```json { "Vue Template": { "prefix": "frontend", // 任意文件输入此触发词生效 "body": [ "<!DOCTYPE html>", "<html lang=\"${1|zh-CN,en|}\">", "<head>", " <meta charset=\"UTF-8\">", " <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">", " <title>${TM_FILENAME_BASE}</title>", "</head>", "<body>", " <!-- $2 -->", "</body>", "</html>", "", "<script>", "// ${CURRENT_YEAR}-${CURRENT_MONTH}-${CURRENT_DATE} ${CURRENT_HOUR}:${CURRENT_MINUTE}", "</script>" ] } } ``` [^2][^5] 3. **使用模板** 任何文件中输入 `frontend` > 按 `Tab` 键生成 --- ### 二、文件类型专属模板 #### 1. Vue 文件模板 ```json // 文件 > 首选项 > 用户片段 > 搜索 vue > 编辑 vue.json { "Vue3 Template": { "prefix": "vue", // 仅在.vue文件中输入vue生效 "body": [ "<template>", " <div>", " $1", " </div>", "</template>", "", "<script setup>", "import { ref } from &#39;vue&#39;", "// 自动生成时间: ${CURRENT_YEAR}-${CURRENT_MONTH}-${CURRENT_DATE}", "</script>", "", "<style scoped>", "/* ${TM_FILENAME} */", "</style>" ] } } ``` [^4][^5] #### 2. HTML 默认模板修改 ```json // 安装 Emmet 插件后修改设置 { "emmet.syntaxProfiles": { "html": { "attrs": { "lang": "zh-CN" }, "output": { "self_closing_tag": true } } }, "emmet.variables": { "charset": "UTF-8", "viewport": "width=device-width, initial-scale=1.0, maximum-scale=1.0" } } ``` [^3] --- ### 三、模板变量说明 | 变量 | 作用 | 示例 | |-----------------------|-------------------------------|-------------------| | `${TM_FILENAME}` | 当前文件名带后缀 | `App.vue` | | `${TM_FILENAME_BASE}` | 文件名无后缀 | `App` | | `${CURRENT_YEAR}` | 当前年份 | `2023` | | `${CURRENT_MONTH}` | 当前月份(两位数) | `07` | | `${CURRENT_DATE}` | 当前日期(两位数) | `15` | [^5] --- ### 注意事项 1. **生效范围** - 全局模板:所有文件类型输入触发词生效 - 专属模板:仅特定文件类型生效 2. **优先级** 当同时存在同名触发词时,专属模板优先于全局模板[^1] 3. **动态变量** 使用 `${n:placeholder}` 定义光标跳转位置,按 `Tab` 切换位置 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CCC1115

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值