更新记录
0.1(2025-08-22) 下载此版本
初次提交
平台兼容性
HbuilderX/cli最低兼容版本 |
---|
4.08 |
HBuilderX插件通用注意事项
HBuilderX-2.7.12以下版本安装插件市场内的插件后,卸载时需手动卸载,详细教程参考:如何手动卸载插件
# 🔭 Shit Mountain Telescope — 屎山望远镜
Shit Mountain Telescope — 屎山望远镜 是一个有趣的代码质量评测工具,用幽默的方式分析 Vue 项目中的“屎山”特征,让代码审查变得更有趣!
🚀 快速开始
安装插件后,在项目上面右键,选择“Shit Mountain Telescope — 屎山望远镜”,在弹窗中选择指定风格,等待控制台输出结果。
✨ 功能特色
🔍 代码质量检测
- AST 解析:通过抽象语法树(AST)分析代码结构,支持 Vue 脚本和模板的深度解析。
- 支持的语言:目前主要支持 Vue (JavaScript/TypeScript),未来计划支持 React、Angular 等框架。
- 未支持的语言:Python、Java、C++ 等非前端语言暂不支持。
- 长函数检测(>50 行):识别过长函数,建议拆分以提高可读性。
- 重复代码检测(跨文件相似度):分析项目中重复或高度相似的代码块。
- 圈复杂度计算:评估函数或方法的复杂度,帮助识别难以维护的代码。
- TODO/FIXME 统计:汇总代码中的待办事项和修复标记。
- 硬编码密钥检测:检查代码中是否存在硬编码的敏感信息。
- 命名规范检查:确保变量、函数、类命名符合团队约定。
- 代码格式化问题:检测缩进、空格、分号等格式问题。
- 循环依赖检测:分析模块间的循环依赖问题。
- 模块耦合度分析:评估模块间的耦合程度,避免过度依赖。
- 上帝对象/过大类检测:识别过于庞大或复杂的类,建议重构。
🧩 Vue 特有检测
- v-if 与 v-for 同元素:检测 Vue 模板中
v-if
和v-for
同时使用的潜在性能问题。 - v-for 缺少 key:检查 Vue 列表渲染中是否缺少
key
属性。 - 不安全 v-html(XSS 风险):标记使用
v-html
可能导致的安全漏洞。 - 模板嵌套深度:分析 Vue 模板的嵌套层级,避免过度嵌套。
- 直接修改 props:检测子组件中直接修改父组件传递的
props
的行为。 - 组件规模统计(Options/Composition):统计组件的代码规模,区分 Options API 和 Composition API。
- 内存泄漏检测(事件/定时器未清理):检查未清理的事件监听器和定时器。
📁 资源分析
- 大资源文件检测:识别项目中过大的静态资源文件(如图片、视频)。
- 尺寸与体积匹配分析:评估资源文件的实际尺寸与体积是否合理。
🎭 风格化报告
- 毒舌吐槽风:用幽默的方式吐槽代码问题,让代码审查不再枯燥。
- 佛系安慰风:以平和的心态看待代码问题,一切随缘。
- 技术专家风:严谨的技术分析,适合追求专业性的开发者。
- 萌系可爱风:用可爱的语言和图标描述代码问题,萌化你的心。
- 严肃正经风:遵循行业标准,提供规范的代码质量评估。
- 幽默调侃风:用搞笑的方式点评代码,让代码审查充满乐趣。
- 励志鸡汤风:鼓励开发者不断进步,代码质量与成长并重。
- 学术论文风:量化分析代码质量,适合学术研究和技术报告。
- 武侠江湖风:以武侠视角点评代码,招式与内功并重。
- 科幻未来风:用未来科技视角分析代码,探索代码的进化方向。
📄 许可证
This repo is released under the Apache License 2.0.