Files
easygoadmin-wiki/EasyGoAdmin_Gin_EleVue/zh/standards/code-review.md
T
2026-10-20 21:19:44 +08:00

2.2 KiB
Raw Blame History

12.5 代码审查清单

:::tip 概述 代码审查(Code Review)是保证代码质量的重要环节。以下清单涵盖后端和前端的审查要点。 :::

后端审查清单

Model 层

  • 继承 BaseModel
  • 表名 $name 配置正确
  • 关联关系定义正确(如有)
  • 无硬编码的数据库前缀

Logic 层

  • 继承正确的基类(BaseLogic 或 BaseTenantLogic)
  • $modelClass 配置正确
  • 查询条件配置合理(pageLikeFields / pageEqFields)
  • 排序配置合理(pageOrderBy)
  • 唯一性校验配置(uniqueFields)
  • 枚举映射配置(serializeMaps)
  • 文件字段配置(fileFields / fileSaveDir)
  • 钩子方法中无 SQL 注入风险
  • 事务使用正确(startTrans / commit / rollback)

Controller 层

  • 继承 BaseController
  • initialize() 中实例化 Logic
  • 所有接口标注 #[Permission] 注解
  • 所有写操作标注 #[Log] 注解
  • 权限码格式正确(sys:模块名:操作)
  • 异常处理完善(try-catch)
  • 参数校验充分

安全

  • 无 SQL 注入风险(使用 ORM 参数绑定)
  • 无 XSS 风险(输出转义)
  • 敏感数据不暴露(password、salt)
  • 文件上传有类型和大小限制
  • 权限校验覆盖所有接口

前端审查清单

API 模块

  • 函数命名规范(getXxxPage / xxxAdd / xxxUpdate / xxxDelete)
  • HTTP 方法正确(GET/POST/PUT/DELETE)
  • 参数传递方式正确(params / data)
  • 错误处理完善

页面组件

  • 使用 <script setup lang="ts"> 语法
  • Props 有类型定义
  • 表单有验证规则
  • 删除操作有确认弹窗
  • 加载状态处理(loading)
  • 空数据处理

权限

  • 按钮级权限使用 v-perm 指令
  • 权限码与后端一致

性能

  • 列表数据分页加载
  • 图片懒加载
  • 组件按需引入

Git 提交审查

  • commit message 格式正确
  • 一个 commit 只做一件事
  • 无调试代码残留(console.log、dump)
  • 无敏感信息泄露(密码、密钥)