Skip to content

VS Code 插件 ​

Directix 提供了 VS Code 插件,通过智能代码补全、悬浮文档、诊断、性能追踪和代码片段提升开发体验。

安装 ​

从 VS Code 市场安装 ​

  1. 打开 VS Code
  2. 按 Cmd+Shift+X (Mac) 或 Ctrl+Shift+X (Windows/Linux) 打开扩展面板
  3. 搜索 "Directix"
  4. 点击 "Install" 安装

从 VSIX 文件安装 ​

bash
cd packages/vscode-extension
pnpm build
code --install-extension directix-vscode-1.0.0.vsix

功能特性 ​

指令自动补全 ​

在 Vue 模板中输入 v- 时,自动显示 Directix 指令补全列表。

触发条件:

  • 在标签属性位置输入 v-
  • 在已有属性后输入空格后再输入 v-

悬浮文档 ​

将鼠标悬停在任意 Directix 指令上,显示详细的文档信息:

  • 指令描述
  • 使用示例
  • 参数选项
  • 默认值

代码片段 ​

输入指令前缀快速插入代码片段:

前缀生成的代码
vcopyv-copy="'text to copy'"
vdebouncev-debounce="{ handler: handleInput, wait: 300 }"
vthrottlev-throttle="{ handler: handleClick, limit: 300 }"
vclickoutsidev-click-outside="handleClickOutside"
vlongpressv-long-press="{ handler: handleLongPress, duration: 500 }"
vhoverv-hover="{ onEnter: handleEnter, onLeave: handleLeave }"
vfocusv-focus
vlazyv-lazy="imageUrl"
vloadingv-loading="isLoading"
vripplev-ripple
vintersectv-intersect="handleIntersect"
vresizev-resize="handleResize"
vscrollv-scroll="handleScroll"
vwatermarkv-watermark="'Confidential'"
vtooltipv-tooltip="'Tooltip text'"
vpermissionv-permission="'admin'"
vhotkeyv-hotkey="{ 'ctrl+s': handleSave }"
vmaskv-mask="'###-##-####'"
vmoneyv-money
vnumberv-number
vinfinitescrollv-infinite-scroll="loadMore"
vdraggablev-draggable
vvisiblev-visible="isVisible"
vsanitizev-sanitize
vskeletonv-skeleton="isLoading"
vellipsisv-ellipsis="1"
vtruncatev-truncate="50"

命令面板 ​

按 Cmd+Shift+P (Mac) 或 Ctrl+Shift+P (Windows/Linux) 打开命令面板:

命令描述
Directix: Open Documentation打开官方文档网站
Directix: Open Config Editor打开可视化配置编辑器
Directix: Show Performance Report显示指令性能指标
Directix: Show Bottlenecks检测并显示性能瓶颈警告
Directix: Clear Performance Data清除已收集的性能数据
Directix: Inspect State快速选择检查指令状态
Directix: Open Directive Docs打开光标位置指令的文档
Directix: Search Docs搜索指令文档
Directix: Insert Directive快速选择插入指令

性能瓶颈检测 ​

插件可以检测指令中的性能问题:

瓶颈类型:

类型阈值描述
慢挂载> 50ms指令挂载时间过长
慢更新> 16ms指令更新超过帧预算
过多更新> 100短时间内更新次数过多
内存泄漏模式-潜在的内存清理问题

检测到瓶颈时,QuickPick UI 会显示警告和优化建议。

诊断 ​

Vue 模板的实时诊断:

诊断描述
缺少参数未提供必需的指令参数
SSR 兼容性警告与 SSR 不兼容的指令
废弃模式警告已废弃的使用模式
重复指令同一元素上有多个相同指令
冲突指令冲突的指令对(如 v-debounce + v-throttle)
修饰符组合无效的修饰符组合
内存泄漏模式可能导致内存泄漏的模式
SSR 水合问题潜在的 SSR 水合不匹配
无障碍问题缺少 ARIA 属性或无障碍问题

配置选项 ​

在 VS Code 设置中配置插件:

配置项类型默认值描述
directix.enableIntelliSensebooleantrue启用智能感知(补全和悬浮)
directix.showDocumentationbooleantrue在悬浮提示中显示文档
directix.enableDiagnosticsbooleantrue启用实时诊断
directix.enablePerformanceTrackingbooleanfalse启用性能追踪
directix.diagnostics.debounceMsnumber500诊断防抖延迟
directix.diagnostics.checkDuplicatesbooleantrue警告重复指令
directix.diagnostics.checkConflictsbooleantrue警告冲突的指令对
directix.diagnostics.checkSSRCompatibilitybooleantrue警告 SSR 不兼容

通过设置界面 ​

  1. 打开 VS Code 设置 (Cmd+, 或 Ctrl+,)
  2. 搜索 "Directix"
  3. 勾选/取消勾选相关选项

通过 settings.json ​

json
{
  "directix.enableIntelliSense": true,
  "directix.showDocumentation": true,
  "directix.enableDiagnostics": true,
  "directix.enablePerformanceTracking": false,
  "directix.diagnostics.debounceMs": 500,
  "directix.diagnostics.checkDuplicates": true,
  "directix.diagnostics.checkConflicts": true,
  "directix.diagnostics.checkSSRCompatibility": true
}

支持的文件类型 ​

  • .vue 文件
  • .html 文件

常见问题 ​

补全不生效? ​

  1. 确保文件类型是 .vue 或 .html
  2. 确认 directix.enableIntelliSense 设置为 true
  3. 重启 VS Code

诊断不显示? ​

  1. 检查 directix.enableDiagnostics 是否为 true
  2. 打开 Vue 文件并等待防抖延迟
  3. 检查问题面板中的警告

性能追踪为空? ​

  1. 启用 directix.enablePerformanceTracking
  2. 在浏览器中与应用交互
  3. 运行 "Directix: Show Performance Report" 命令

基于 MIT 许可发布