07月10, 2018

ThinkJS代码规范

log规范

  • 调用think.logger接口
  • log格式为:函数路径+log内容
  • functionName() {
  • think.logger.info('path/to/functionName ' + someLogStr);
  • think.logger.error('path/to/functionName ' + someLogStr);
  • }
less

代码注释规范

  • 函数注释
  • /**
  • * 解析微信登录用户数据
  • * @param sessionKey 入参列表及说明
  • * @returns userInfo 返回参数说明
  • */
  • async decryptUserInfoData(sessionKey) {
  • ····
  • return userInfo;
  • }
  • # 行注释
  • // 如果用户没注册,则在数据库中增加该用户的信息
  • if(think.isEmpty(userId))
  • //用户id
  • let userId = this.post('userId');
  • //用户昵称
  • let name= this.post('name');
cs

命名规范

  • 目录名

    一个单词,全部小写 rungroup activity user signin

  • 文件名

  • controller层:一个单词,全部小写 order activity user weibo
  • model/service层:尽量一个单词全部小写,多个单词时使用下划线分割 rungroup activity shop_arrangement
  • 函数名
  • controller层:一个单词,全部小写
    • loginAction() {
    • }
  • model/service层:驼峰格式

    • getUserInfo() {
    • }
  • 变量名

    • 常量字符串:全部大写,单词之间使用下划线分割
    • const APPNAME = "大官人博客";
    • const DAGUANREN_THINK_VERSION = "3.0";
    • 普通变量:驼峰格式
      • let userName = this.post('userName');

其他注意事项

  • 页宽控制在80个字符内
  • 单行缩进4个空格,推荐使用HBuilder自带的整理代码格式(Ctrl+Shift+F)
  • 函数调用深度尽量控制在三层以内

本文链接:https://www.daguanren.cc/post/code_criterion_thinkjs.html

-- EOF --

Comments