# 代码规范

## 目录结构

<pre>
.
├── mock                    // mock文件
├── public                  // 公共文件 可以放一些第三方字体 样式库等
├── src
│ ├── components            // 公共组件目录
│ ├── config.js             // 项目配置文件
│ ├── global.less           // 样式配置文件
│ ├── layouts               // 布局目录
│ ├── models                // 公共model存放位置
│ │ └── public.json         // 公共model(public)文件，用于存放公共数据，比如：username
│ ├── services              // 公共api存放位置
├── pages
│ │ ├── 404.js              // 404页面
│ │ ├── home         
│ │ │ ├── components        // 首页公共组件
│ │ │ ├── index.js          // 首页入口文件
│ │ │ ├── index.less        // 首页样式
│ │ │ ├── models
│ │ │ │ └── home.js         // 首页model文件（可以有多个，自动加载）
│ │ │ └── services
│ │ │   └── homeApi.js      // 首页api文件
│ │ ├── document.ejs        // 项目模板文件
│ │ ├── exception           // 异常路由
│ │ │ ├── 404
│ │ │ │ └── index.js
│ │ └── index.js            // 跟目录路由文件
│ ├── themes
│ │ └── vars.less           // 项目主体配置文件
│ └── utils
│   └── index.js            // 项目工具文件
└── package.json            // 项目依赖配置文件
 
</pre>

## 约定

1. 所有的文件夹全部小写， 组件大驼峰，其他小驼峰。
2. 组件必须用`index.js`文件  导出具体组件文件
3. 所有文件以`.js` 后缀结尾，不要使用`.jsx`
4. 缩紧统一使用 2 个空格
5. 修改顶部有著名（有写作者是谁）的文件，必须通知到作者本人，授权后方可修改
6. 项目下 `master`跟`dev`分支为保护分支，开发人员应该基于 dev 分支创建自己的开发分支
7. 每天下班前提交代码， 正常情况下都要在提交代码后请求合并到 dev 分支，并写好合并代码注解，然后每天上班第一件事拉取`dev`分支最新代码到自己的开发分支
8.  待添加
