ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

LW前端代码规范

2021-03-03 23:34:13  阅读:213  来源: 互联网

标签:驼峰 TEXT 前端 LW 例子 组件 SubTable 代码 命名


LW前端代码规范

1. git分支命名规则

  • 普通分支:name-type-description
    例子:
    aaron-fix-objList
  • 临时公共分支
    master-description
    例子:
    master-form

2. 变量命名

  • 普通变量:小驼峰
    例子:
    userName
  • 常量、枚举值:全大写+下划线分割
    例子:
    MAX_LENGTH
    NUMBER_AUTO

3.组件属性命名

  • 普通属性:小驼峰
    例子:
<Com title = "标题" />
  • 类型属性:大驼峰
    例子:
<Com SubCom={SubTableCom} />

4.类型命名(class、interface、type、enum、namespace

大驼峰
例子:

class UserManager{

}

5.组件命名

大驼峰
例子:

<SubTable title="子表单" />

6.class内代码组织顺序

  • 变量
  • 构造函数
  • 抽象方法
  • 复写的方法(例如组件生命周期)
  • 自定义方法
  • 组件render方法

7.文件组织方式

模块下多个公用组件组合在components文件夹内
/components/SubTable
/components/StatefulTable
无样式的组件直接使用大驼峰命名文件
/SubTable.tsx
带样式组件使用大驼峰命名文件夹,内部使用index命名
/SubTable/index.tsx
/SubTable/index.css
模块下多个公用组件组合在dto文件夹内(少量类型可汇总到单个dto文件中)
/object/dto/FieldType.ts
/object/dto/FieldDetail.ts

8.注释相关

类型、函数使用说明注释

/**
 * 用户管理
 * @author aaron
 */
class UserManager {

  /**
   * 添加用户
   * @param user 用户信息
   * @return 结果是否添加成功
   */
  addUser(user: User): boolean {
    // 添加用户
    ...

    return true;
  }
}

静态变量、枚举 使用文档注释

/** 最大字数 */
export const MAX_LENGTH = 50; 

export enum FieldType {
  /** 单行文本 */
  TEXT_SINGLE = 'TEXT_SINGLE',
  /** 多行文本 */
  TEXT_MULTI = 'TEXT_MULTI',
}

9.其他

函数强制加上返回类型
function processUserName(user: Uesr): string {
  return userName;
}
支持ref调用的组件使用类型约束行为
interface FormInstance {
  setFieldValues: (values:ValueMap) => void;
}

10.css相关

  • 不推荐原子化方式
  • className使用小驼峰命名方式(cs.userName)

标签:驼峰,TEXT,前端,LW,例子,组件,SubTable,代码,命名
来源: https://blog.csdn.net/reallyxx/article/details/114340819

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有