Vue2 Mixin Jump
为 Vue2 项目提供在 .vue 文件中 Ctrl/Cmd+Click 跳转到混入(mixin)定义的能力,覆盖模板与脚本区域的常见调用与访问场景。
主要能力
- 支持跳转到 mixin 中的
methods、computed 与 data() 返回对象的属性键
- 模板与脚本均可用;按光标所在名称就近匹配,避免跳到对象键或关键词
- 路径解析支持
@/ 映射至工作区 src/,以及相对路径 ./、../
支持语法示例
- 模板
- 事件:
@click="toggleFullscreen"、@click="handleClick(item)"
- 插值:
{{ formatDate(x) }}、{{ isActive }}
- 指令:
:class="{ disabled: historyIndex >= history.length - 1 }"
- 脚本
- 方法:
this.submitForm()、submitForm()
- 属性:
this.isPanning、this.historyIndex
- mixin 声明:
mixins: [undoRedoMixin, keyboardShortcutsMixin, fullscreenMixin]
跳转策略
- 在已解析到的 mixin 内按优先级查找:
data() → computed → methods
- 仅匹配定义位置,不匹配调用(例如排除
this.toggleFullscreen() 的调用)
- 模板与脚本均以“光标所在词”为准,过滤常见关键词(如
if、return)
安装与使用
- VSIX 安装:扩展视图 → 右上角
… → 从 VSIX 安装 → 选择 vue2-mixin-jump-1.0.0.vsix
- 使用:打开
.vue 文件,将光标放在需要跳转的名称上,按 Ctrl/Cmd+Click 即可
- 日志诊断:打开
输出 面板,选择通道 Vue2 Mixin Jump 查看 [definition]、[mixins]、[hit]/[miss] 信息
注意与局限
- 仅解析通过
import/require 引入且在 mixins: [] 中声明的混入
- 暂不支持内联匿名 mixin 对象解析;复杂动态表达式可能无法识别
.vue 文件需使用 Vue 语言模式(Vetur/Volar)
发布信息
- 版本:
1.0.0
- 作者:
Lexin
- 仓库:
https://gitee.com/lixinchao0914/vue2-mixin-jump.git
- 许可:MIT
常见问题
- 跳转不生效:
- 确认光标位于名称字符上(如
isPanning 的字母上)
- 确认该名称在某个已声明的 mixin 的
data/computed/methods 中存在定义
- 检查输出面板日志中的
[miss] 或 [read-fail] 信息定位问题
| |