写一个vscode支持vue文件跳转到定义的插件,又可以愉快地摸鱼了

news/2024/11/18 14:00:47/

1. 背景

vscode自身是支持vue文件组件跳转到定义的,但是支持的力度是非常弱的。我们在vue-cli的配置的下,可以写很多灵活的用法,这样可以提升我们的生产效率。但是正是这些灵活的写法,导致了vscode自身提供的功能无法支持跳转到文件定义。为了兼容这些灵活的写法,提高工作效率,所以写了一个vscode支持vue文件跳转到定义的插件。

2. 插件

vscode支持vue文件跳转到定义的插件(vue jumper)已正式发布到vscode插件市场,可以到vscode插件市场直接下载体验。

在这里插入图片描述

3. 功能

该插件支持vue-cli提供给我们很多组件引用写法的跳转支持。

3.1 省略写法跳转支持

我们在引用组件的时候,如果组件的名称是index.vue或者index.js时,我们引入时可以省略index.vue或者index.js。如果我们使用了省略写法,vscode自身是无法支持跳转的,所以该插件需要支持省略写法跳转。

import MycoMponent from '../components/MyComponent' // '../components/MyComponent/index.vue'

3.2 alis别名路径跳转支持

在vue-cli(webpack)的配置下,我们可以配置alis别名,这样我们可以提升生产效率,但是vscode本身是不支持的,所以该插件需要支持alis别名路径跳转。

import MycoMponent from '@/components/MyComponent'

3.3 components注册别名跳转支持

vscode本身是支持components注册别名跳转的(如果引入时有省略写法和alis别名路径也是不支持的),所以该插件也需要支持components注册别名跳转。

<script>
import MycoMponent from '@/components/MyComponent'
export default {components: {MycoMponentReName: MycoMponent}
}
</script>

3.4 mixins中引入的组件跳转支持

在实际开发中,我们可以有很多复用的功能抽离到了mixins中,其中包含了组件的引入和注册,这个vscode本身是不支持跳转的,所以该插件支持mixins引入的情况。

<template><MyComponent />
</template>
<script>
import myMixins from '@/mixins/myMixins'
export default {mixins: [myMixins]
}
</script>
// myMixins.js
import MycoMponent from '@/components/MyComponent'
export default {components: {MycoMponent}
}

3.5 全局组件引入跳转支持

在全局中注册的组件,vscode本身是不支持这种情况的跳转的。由于全局组件引入的情况比较复杂,该插件使用了模糊查找的方式来查找组件定义的地方,做到了全局组件引入的跳转支持。

<template><MyComponent />
</template>
<script>
// main.js
import vue from 'vue'
import MycoMponent from './components/MyComponent'
vue.use(MycoMponent)

http://www.ppmy.cn/news/392949.html

相关文章

python357左轮枪模内部结构图_CODOL武器与COD4678代中原型的第一人称枪模对比(手枪篇)...

先说明一下&#xff0c;本贴选用了CODonline里的大部分武器的第一人称枪模和正作的MW、MW2、BO、MW3这四代中的原型枪进行对比(没有原型枪的就不上图了)&#xff0c;由于我这会儿手头没有online所以借用了call of duty wiki里的一些图。 手枪篇 CODOL&#xff1a;USPT.45 MW&am…

合金弹头 无敌版

给大家推荐一个不错的游戏 合金弹头 无敌版 。 下载地址 转载于:https://blog.51cto.com/haiyang457/1055133

vijos-1199,核弹危机

题目描述&#xff1a; shibowen和ganggang正在玩红警,可不料shibowen造出了核弹正要发射......&#xff08;ganggang _&#xff09; 已知核弹的攻击范围是边长n的正方形&#xff0c;ganggang的基地是边长m的正方形 基地样例&#xff1a; ...#.# .#...# ##...# ...... ..#### .#…

JS坦克大战游戏

文章目录 个人初学JS写的程序&#xff08;看看就好&#xff09;代码不够优雅代码具体实现功能1.画布代码画出坦克&#xff0c;子弹2.实现敌人坦克的自动走路&#xff0c;发射子弹飞行3.敌人坦克的重叠问题&#xff0c;边界检测4.子弹打中坦克&#xff0c;坦克消失并产生爆炸效果…

重回童年的经典系列☀️| 【坦克大战3D版】游戏制作+解析

💚坦克大战💚 📢前言 坦克大战小游戏,想必只要是能刷到这篇博客的,无一例外都是玩过这款经典童年游戏的。记得小时候每到放学或者周六日,都会一起聚到有影碟机的小伙伴家里,然后打开“屁股超级大”的电视机和影碟机,将游戏碟放进去、手柄插上去。这个时候哪怕一天不…

合金弹头技术文案

合金弹头技术文案 平台&#xff1a;利用System.getProperty("microedition.platform")来判断平台类型 I/O建立流连接的方式很奇怪&#xff0c;经过讨论初步猜测是遇到了什么技术问题因而写出了这么乱七八糟的代码&#xff08;源引Gameloft Lyman&#xff09;protec…

合金弹头7

合金弹头7下载 1口袋妖怪:钻石356602极品飞车10:卡123553合金弹头7122754极品飞车9:最高117905机动战士高达OO94506火影忍者疾风传67457...合金弹头7 更多相关下载 >> 其他站点下载: 推荐使用迅雷下载 迅雷http下载 网际快车下载 下载须知: *部分软件. 合金弹头7下载_ …

Windows 10日语输入法无法输入假名问题

换了个电脑装日语输入法&#xff0c;一直只能输英文字母打不了字&#xff0c;记录下解决方法。 选语言首选项 日本语 -> 选项 微软输入法 -> 选项 高级设置 将下面的罗马字输入改为假名输入即可 也可以选日英文混合&#xff0c;把下面都勾上&#xff0c;可以日文英文切换…