Git 提交规范 - feat 新增功能 - fix 修复 Bug - docs 文档更新(如 README、CHANGELOG 等) - style 代码样式调整(如空格、格式化等,不涉及功能变更) - refactor 代码重构(既不修复 Bug 也不新增功能) - perf 性能优化 - test 添加或修改测试代码 - chore 构建过程或辅助工具的变动(如依赖更新、配置文件修改等) - revert 回滚之前的提交 代码规范 - 使用v-for时必须添加:key - 组件props必须定义类型和默认值 - 复杂逻辑必须添加注释 - 敏感信息不硬编码 - 变量/函数:小驼峰式命名 (camelCase) - 组件/类:小驼峰式命名 (pascalCase) - 合理使用缓存 - 避免不必要的重渲染 - 工具函数放在/utils目录 - 公共组件放在/components目录 常见 class 命名规范 - container 用于页面最外层容器 - header 头部区域 - main 主要内容区域 - footer 底部区域 - left 左侧区域 - right 右侧区域 - title 标题 - nav 导航区域 - banner 轮播图/广告 区域 - tabs 标签区域 - list 列表区域 循环调用避坑指南: - 页面: page/shopcity/index.vue 城市选择列表页 - 背景: 城市名称列表依赖于父级城市英文首字母简写例:A、B、C, 循环项下的list 进行循环展示 - 场景: 城市列表点击,需要获取点击的城市信息 - 问题: 触发点击事件函数无法接收入参item - 解决方案: 改为箭头函数 @click="() => { headerSelectMapClick(item) }" - 原因: 查询DeepSeek给出的解释是, 箭头函数创建了一个闭包,保留了 item 的引用 即使列表重新渲染,也能保持对正确 item 的引用 - 该解释是否正确 不确定 有待考量 - 示例代码