为提高团队开发效率和代码质量,减少不必要的低级的bug产生,特制订此规范,请大家严格遵守开发规范。(微信/支付宝小程序通用)
1.开发工具:
统一开发工具能够提高开发效率,建议使用webstorm开发,此IDE有代码补全、重复命名和声明未使用等错误提示。
2.项目结构:
项目根目录下创建pages目录,用于存放页面
pages目录下创建components目录,用于存放自定义组件
pages目录下创建ExternalPages和ExternalPagesPorsche目录,用于展示webview页面
pages目录下创建home目录,用于首页业务页面
pages目录下创建login目录,用于登录业务页面
pages目录下创建my目录,用于我的业务页面
pages目录下创建order目录,用于订单业务页面
项目根目录下创建lib目录,用于存放三方类库
项目根目录下创建utils目录,用于存放工具类
项目根目录下创建image目录,用于存放静态图片资源
3.代码书写规范:
- 代码缩进4个空格
- 每个函数体之间保留一个空行
- 每给函数体需要写明注释:
/**
* @desc 此函数具体实现功能描述
* @param service int 参数名/数据类型/参数描述
* @return {week: string, month: string, year: number, time: string, day: string} 返回值
*/
- 函数体内注释写法:
function getTakeTime(service) {
// TODO 设置当前时间加整备时长为当前默认取车时间
// do something
// TODO 获取取车时间分钟 格式化取车时间为15分钟每段
// do something
// TODO 如果取车时间对象不为空&&取车时间比当前时间+整备时间大 默认还是取车时间
// do something
return {}
}
- 变量命名和声明规范
命名为驼峰命名法,首字母小写
声明变量必须根据数据类型进行设置默认值
let serviceTime = “”
let serviceTime = 0
let serviceTime = false
let serviceTime = {
take: "",
give: ""
}
- 文件夹和文件命名规范
命名为驼峰命名法,首字母小写
字母小写 多词-多词
eg1: value-card
eg2: value
- 使用===进行数据判断,严格判断数据类型
let a = '123'
if (a === '123') {
return true
}
if (a === 123) {
return false
}