如何解决Vue3没有代码提示问题?

在上一篇笔记中提到了Vue3+vite+Ts写代码过程中,出现的代码自动补全失效功能,今天来谈谈如何解决这个问题。

首先,我们已经很明确的就是安装了volar插件之后,HTML标签片段补全已经失效,即在template中书写HTML标签时,不会再有代码补全,即输入“div”,就是“div”,而不再是“<div></div>”,为了解决这个问题,我们需要在不删除volar插件的同时,对Vscode做一些配置。

 打开设置,进入到如下界面:

 选择 文本编辑器 -> 文本 -> ,点击右面第一个,添加项,项输入:“*.vue” ,值输入:"html",点击保存后回到vue文件中,任何输入HTML标签,发现已经可以自动补全代码了,而且是自闭和的。

但是此时也产生了一些问题,不知道大家有没有接触到,如果没有的话就可以略过了。

第一:自定义的代码片段失效了,我们平时在新建Vue3组件的时候,需要初始化模板

  <template>

</template>

<script setup lang='ts'>
import {ref,reactive} from 'vue'

</script>

<style lang='less' scoped> 

</style>

虽然代码很简单,但每次新建一个组件时都需要书写还是比较繁琐的,因此我们会新建一些自定义的代码片段,在用户代码片段中,点击vue.json即可新建自己的代码片段

如何创建自己的代码片段这里就不展开细讲了,相关的教程有很多,而且非常简单。

代码片段创建完成后,只需要输入关键词就可以创建整个片段了,还是非常方便的。

但是在经过上述的配置后,我的代码片段失效了,此时的一个解决方法就是,新建一个自己的全局代码片段。

 点击“新建全局代码片段文件”,然后输入文件的名字,然后就可以自定义代码片段了,方法和在已有的.json文件中定义代码片段的方法一样。

配置完成后,新建一个.vue文件,输入自定义的代码提示词,如我的是vue3,回车,就生成了代码片段。

 第二个产生的问题就是,在经过最上面的配置后,.vue文件的图标都变成了HTML文件的图标,出现这样的情况大家也不要慌,如果不介意的话其实也可以不用管的,但是为了区分,建议还是下载一个新的图标插件

 因为之前我装的是scode-icon这个插件,所以配置完成后图标会发生变化,此时我们可以重装一个,比如我装的是vue Theme

 

 安装完成之后即可发现文件的图标发生了变化,当然了,安装其他的icon组件也是可以的,看自己喜好哈

### VSCodeVue3 代码提示插件失效的原因分析 当遇到 VSCodeVue3 代码提示功能突然失效的情况时,可能由多种因素引起。一种常见原因是插件之间的冲突[^2]。另一个可能是某些配置项影响了 Vetur 或其他相关插件的工作状态。 ### 解决方案概述 #### 方法一:处理插件冲突 尝试通过卸载并重新安装所有与 Vue 开发有关的扩展来排除潜在的插件冲突问题。完成操作后需关闭再启动 VSCode 才能生效。 #### 方法二:调整自动更新模式 进入 `文件>首选项>设置` 菜单,在顶部搜索框内键入 "自动更新检索", 将 `Update: Mode` 设置更改为 `none`, 此举有助于稳定环境配置,减少因频繁更新带来的不稳定因素。更改完毕后按照指示重启编辑器以应用改动[^5]。 #### 方法三:确保正确配置格式化工具 对于使用 Vetur 插件却仍存在格式化失败的情形,可以检查是否已适当设置了默认 HTML 格式化工具。具体路径为 `文件->首选项->设置` ,接着查找 `vetur.format.defaultFormatter.html` 并将其值设为 `"js-beautify-html"` 。这一步骤能够改善部分用户的体验[^4]。 ```json { "vetur.format.defaultFormatter.html": "js-beautify-html" } ``` #### 方法四:验证 TypeScript 和 JavaScript 支持 考虑到 Vue3TypeScript 的支持更为广泛,确认已经安装最新版本的官方推荐插件如 "Volar" 来替代旧版 Vetur 可能会带来更好的开发体验。同时也要保证全局或工作区级别的 tsconfig.json 文件处于良好维护之下,因为这些配置直接影响到了语言服务的表现[^1]。
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值