前端常用规范
开发规范
无规矩不成方圆,无规范难以协同, 规范的目的是为了编写高质量的代码。对软件来说,适当的规范和标准绝不是消灭代码内容的创造性、优雅性,而是限制过度个性化,以一种普遍认可的统一方式一起做事,提升协作效率,降低沟通成本。
命名规范
项目命名
- 全部采用小写方式, 以中划线分隔。
正例:mall-management-system
反例:mall_management-system / mallManagementSystem
目录命名
- 采用中划线分隔,有复数结构时,要采用复数命名法, 缩写不用复数
正例: scripts / styles / components / images / utils / layouts / demo-styles / demo-scripts / img / doc
反例: script / style / demo_scripts / demoStyles / imgs / docs
文件命名
- 采用中划线分隔
canvas-props.vue
变量或方法命名
- 变量名采用小驼峰式(Camel)命名
- 方法名采用小驼峰式(Camel)命名,注意动作语义化前缀 can | has | is | get | set | add | edit | del
- 事件以 on / un/ handle 前缀
- 常量采用全大写+下划线
const UNIT_TEST = 'test'
- 类名采用大驼峰式命名
class Home extends Vue{ }
样式规范
- 组件内样式必须通过 scpoe 控制作用范围
- 样式类名采用中划线连接
class="test-ele"
- id 采用小驼峰式命名
id="testIdName"
- scss 中的变量、函数、混合 采用驼峰式命名
Git规范
分支模型
- master 分支表示一个稳定的发布版本,在 preview 分支测试稳定后, 会合并到 master 分支, 并使用 tag 标记应用版本,tag 规范: v{APP_version}, 例如 v0.1.0
- dev 分支,开发者主要工作的分支, 最新的特性或 bug 修复都会提交到这个分支,开发者如果在该分支进行了提交,在 push 到远程之前应该先使用 rebase 模式 pull 一下,保证分支的简洁,在 dev 分支中也可能会经历发布过程, 例如 bug 修复版本. 这里同样使用 tag 来标记这些发布. 例如 v0.1.1
- feature 分支,涉及多人协作或者大功能的开发, 应该从 dev 分支 checkout 出独立的 feature 分支, 避免干扰 dev 分支,命名:feature.name,name 是功能名称
- preview 分支,预发布分支,临时合并 dev / feature 分支,用于支持测试环境
- release 分支,从 master 切出 release 分支用于发布,命名:release.{GZB_version},用于支持生产环境
提交信息规范
- feat: 引入新功能
- fix: 修复了 bug
- docs: 文档
- style: 优化项目结构或者代码格式
- test: 增加测试