vscode用户代码片段的配置与使用

配置和使用

开发时有很多代码片段是重复的,如果每次用到都写一遍或者复制一遍,都会显得很麻烦。本文以 vue3 + typescript 为例,介绍一下在 vscode用户代码片段 的使用。

vue3模板:

<script setup lang="ts">

</script>

<template>

</template>

<style lang="less" scoped>

</style>

上面是我写vue3项目时的基本结构,虽然没什么难度,但是每个页面都要写一遍就觉得很烦。此时可以通过点击 左下角齿轮【设置 - 配置用户代码片段】:
在这里插入图片描述
然后会在编辑器中间弹出一个界面:
在这里插入图片描述
界面分为两个部分,分割线上面是 现有代码片段,表示已经创建了相关文件,分割线下面是新代码片段,表示可以创建相关文件。

如果你没有配置过任何文件,现有代码片段中应该是没有任何项的,你现在需要新建一个代码片段。比如本文示例是vue项目,那就在 搜索框 输入vue,就会显示 vue.json
在这里插入图片描述
点击进去默认代码如下图:
在这里插入图片描述
这就是使用说明,新建的所有代码片段都差不多,内容是:

把你的片段放在这里。每个代码段都在一个代码段名称下定义,并具有前缀、正文和描述。
前缀是用来触发代码段的,主体将被扩展和插入。可能的变量:
$1, $2用于制表停止, 0 用于最后的光标位置, 0用于最后的光标位置, 0用于最后的光标位置,{1:label}, ${2:another}用于占位符。连接具有相同id的占位符。

通过上面例子来说,Print to console 是代码片段的名称,prefix 是代码快捷键入口,通过输入 log 可以触发;body 是主体内容,其中$1 $2 是光标所在位置,可以通过 Tab 键切换到下一个光标位置;最后是 description ,也就是描述文本。

把例子 取消注释 ,新建一个vue文件 Test.vue ,在里面输入 log ,代码提示中就会出现刚刚定义的代码片段
在这里插入图片描述
那么现在就可以把vue3的模板代码添加到 vue.json 中:

"vue3 template": {
	"prefix": "vue3",
	"body": [
		"<script setup lang=\"ts\">",
		"$1",
		"</script>",
		"",
		"<template>",
		"$2",
		"</template>",
		"",
		"<style lang=\"less\" scoped>",
		"$3",
		"</style>"
	],
	"description": "vue3基础模板"
}

保存之后到vue文件中测试:
在这里插入图片描述
至此用户代码片段的配置和使用就结束了,下面是一些拓展和踩坑。

拓展和踩坑

vue.json 的配置只对 .vue 文件的顶级内容生效

具体场景可以参考下图:
在这里插入图片描述
如图右侧所示,log 代码片段已经配置,但是左侧代码提示中不存在对应代码片段,下图则是生效的:
在这里插入图片描述

script 标签需要配置 javascript.json

通过【设置 - 配置用户代码片段】 打开 javascript.json ,配置 clg 代码片段:

"打印到控制台": {
	"prefix": "clg",
	"body": [
		"console.log($1)",
		// "$2"
	],
	"description": "日志输出到控制台"
}

script 标签中输入 clg 即可触发:
在这里插入图片描述

script + typescript 需要配置 typescript.json

其实这个和上面应该算同一个坑,这里还是记一下吧。在基于 vue3 + ts 的写法上,我配置了 javascript.json,但是在 script标签 中始终无法生效,百度也没有类似问题(基础不牢,是我太菜了)。受到 全局代码片段 的启发,转头去搜了一下 typescript.json ,果然有这个。配置了一下,果然成功了
在这里插入图片描述

全局代码片段

这个其实是在上面两条之前领悟的,当时啥也不懂,一股劲死磕 script + tsjavascript.json,js的代码片段死活不生效,突然翻到了 新建全局代码片段文件
在这里插入图片描述
新建后可以看到跟其他文件的代码结构有点不同:
在这里插入图片描述
这里是多了一行作用域的,里面包含了 javascript 以及 typescript,这条全局代码片段是能在 scriptscript + ts 中生效的:
在这里插入图片描述
就是这里给了我启发,然后我去搜索框找到了 typescript.json ,也就是上一条说的内容。

本文主要就讲一下代码片段的使用和本人踩的坑,代码片段模板这种东西因人而异,只要把你觉得琐碎且重复的代码抽出来就行。

希望文章能对你有所帮助

### 尚硅谷 VSCode 用户代码片段 使用教程最佳实践 #### 一、尚硅谷关于VSCode用户代码片段的基础介绍 在尚硅谷的教学资料中,对于VSCode用户代码片段的讲解主要集中在如何创建自定义代码片段以及其应用场景上。通过这种方式可以极大提高开发效率并减少重复劳动。例如,在JavaScript文件中经常使用的`console.log()`语句可以通过设置特定前缀来快速输入完整的日志记录命令[^1]。 ```json { "Print to console": { "prefix": "log", "body": [ "console.log('$1');" ], "description": "Log output to console" } } ``` 此配置意味着每当开发者键入`log`并触发自动补全功能之后,将会得到一条预设好的控制台打印指令模板。 #### 二、具体操作指南 为了更好地利用这些特性,建议按照如下方式来进行: - **全局范围内的应用**:如果希望某些常用结构能够在任何项目里随时调用,则应该把它们放置于全局级别的snippets目录下;而对于仅限当前项目的特殊需求来说,则可以在`.vscode/snippets/`路径内建立相应的JSON文件。 - **多语言支持下的灵活性**:考虑到不同编程环境之间的差异性,应当针对每种目标语言单独编写对应的片段集合,并确保名称具有足够的区分度以便识别和管理。 - **版本控制系统中的协作便利性**:由于团队成员之间可能共享同一套工作流标准,因此有必要将精心设计过的代码片断纳入到源码库当中去,从而方便其他人获取最新的改动成果。 #### 三、结合Vue框架的最佳实践案例分析 特别值得注意的是,在涉及到前端组件化开发模式时——比如基于Vue.js的应用程序构建过程中——合理运用VS Code 的用户代码片段能够显著简化诸如事件处理函数注册这样的常见任务。假设存在这样一个场景:页面上有多个编辑按钮需要关联各自的修改逻辑,此时就可以预先准备好一段通用型的实现方案供后续反复引用[^2]: ```javascript methods: { edit(item){ this.currentItem = item; }, saveEdit(){ // 更新数据... } }, <template> <button @click="edit(category)">编辑</button> <!-- 对话框 --> <div v-if="currentItem"> <!-- 表单元素... --> <button @click="saveEdit">确认</button> </div> </template> ``` 上述例子展示了怎样借助于事先准备好的方法签名迅速完成交互行为的设计,而无需每次都手动敲写冗长相似的语法表达式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值