(rj-1) js开发规范:
Rj-1-1 命名:
命名空间: 小驼峰
构造函数: 大驼峰
常量: 全大写并单下划线做连词符
私有变量: 单下划线+小驼峰
私有变量(常量):单下划线+全大写并单下划线做连词符
命名必须符合语义化,严禁出现 名称与实际不符,或者没有语义的    命名
例如:具有行为的:动词+名词,如:getResume,goHome
具有某种状态的: (名词或者动词)+Status, 如 ResumeStatus,     LoginStatus
布尔值类型的: is+(名词或者动词), 如 isLogin, isSubmit
Rj-1-2 注释:

头部使用多行注释,注解、标注、解释采用单行注释

  • Rj-1-2-1 头部注释
使用必填项关键字 Create (创建人)
使用必填项关键字 Module (模块名称)
使用必填项关键字 Description (描述)
使用可选关键字   Collaborator (协作者)
格式:
    css:
         /**
          * Create by Allen.sun on 2019/10/25
          * Module: from.css
          * Collaborator: lisa、steven
          * Description: form表单抽象样式表
          */
    js:
        /**
         * Create by Allen.sun on 2019/10/25
         * Module: from.css
         * Collaborator: lisa、steven
         * Description: form表单抽象样式表
         */
    html:
        <!--
          -    Create by Allen.sun on 2019/10/22
          -    Description: 发布职位编辑和新增共同页面
          -    Module: PublishJob.cshtml
          ->
  • Rj-1-2-2 行内注释
    • 函数的注释:

      函数的注释采用关键字: TODO、DONE、NOTE 关键字进行不同情况的区分注释

css: 
        /* TODO: resume_body-title__large 简历大标题样式*/
        /* DONE: resume_body-title__large 简历大标题样式*/
        /* NOTE: resume_body-title__large类 中的 !important 是用于覆盖color属性的样式污染 请注意*/
HTML:
        <!-- TODO:职位弹出框 -->
        <!-- DONE:职位弹出框 -->
        <!-- NOTE:职位弹出框中有部分内联样式,为了解决插件导致的样式重写,请注意 -->
js:
        // TODO: getResume 获取简历详情
        // DONE: getResume 获取简历详情
        // NOTE: getResume方法大于100行,获取数据之后需要计算大量的数据,并且需要修改数据结构,请注意

注意: TODO —> DONE 的状态需要手动修改,请注意

变量的注释:
 var sResumeName = null; 可以不用注释,见名知意
 var const SRN = null; // 简历名称 -----必须注释非见名之意
Rj-1-2 方法的行数做限制:
强制所有的方法不得超过100行,如果超过,需要对TL进行报备,并对代码的复杂性和注意事项用NOTE关键字进行说明。示例参见:Rj-1-2-2 行内注释 - js - NOTE 的定义
(rc-1) css编写规范:

鉴于大家对block__element_modifier 命名法则接受程度不同,建议但是不强制要求使用。

  • Rc-1-1 命名格式:
    只能使用 英文字符 + 特殊字符:('-'||'--'||'_'||'__') + 英文字符 + 阿拉伯数字 的组合方式,且必须以英文字符开头只能是小写,不能以特殊字符结尾,特殊字符除了规则意外的不能连续出现多次 。可以是单英文字符但是如果是多个单词的词组中间必须加上 规定的特殊符号之一。 如: resume, resume-body, resume_body, padding-18, padding--18等任意的组合方式。
  • Rc-1-2 见名知意:
    严禁出现无意义的命名,词不达意的命名。英文缩写是被允许的,但是必须进行单行注释 规则参见:变量的注释
  • Rc-1-3 选择器的使用:
    禁止使用ID选择器,标签选择器,一切优先使用class选择器。
  • Rc-1-4 嵌套层级:
    选择器的查找层级放开了3层,严禁大于三层。

注意以上规则原则上是不能违反的,但是遇到特殊情况可以向TL进行报备之后,在代码中进行NOTE注释原因并填写注意事项。注释规则参见:Rj-1-2-2 行内注释

(rh-1) html编写规范:
  • Rh-1-1 class,id命名格式: 参见 Rc-1-1 命名格式。
  • Rh-1-2 标签属性命名:
采用小写英文字符 + '_' +英文字符的方式,也可以是单小写英文字符,规则参见 Rc-1-2 见名知意 。
  • Rh-1-3 内联样式:
严禁使用内联样式 。
  • Rh-1-4 style标签的使用
严禁使用style标签在 html项目内直接修改,特殊情况出现需要向TL报备并使用NOTE关键字进行注释并说明原因和注意事项。注释规则参见 Rj-1-2-2 行内注释
  • Rh-1-5 important关键字
原则上禁止 !important 关键字的出现,特殊情况出现需要向TL报备并使用NOTE关键字进行注释并说明原因和注意事项。注释规则参见 Rj-1-2-2 行内注释
  • Rh-1-6 script标签的使用
原则上禁止使用script标签直接在HTML文本中写控制脚本,特殊情况出现需要向TL报备并使用NOTE关键字进行注释并说明原因和注意事项。注释规则参见 Rj-1-2-2 行内注释
(rp-1) 静态文件规范:
  • Rp-1-1 项目命名:
全部采用小写,可以用下划线分割,如:my_project
  • Rp-1-2 目录命名包括css/js/html/json:
采用小写,可用下划线,
复数目录,采用复数命名:scripts、styles
  • Rp-1-3 图片命名:
1、非公共资源图片命名以 项目名称(或者简写)作为开头+中划线+图片内容命名+双中划线+描述。 
如 publish_job-loading--normal.png
2、公共资源图片命名 public开头+中划线+图片内容命名+双中划线+描述。
如public-loading--normal.png
  • Rp-1-4 代码仓库规范:
1、页面脚本仓库 -------------------------- js目录
2、中间件仓库 -----------------------------Scripts目录
3、视图目录--------------------------------Views目录
4、样式目录--------------------------------Css目录
5、图片资源--------------------------------images目录
6、公共的图片库-----------------------------public目录
7、公共样式目录-----------------------------Css/public目录
7、公共html模板目录-------------------------Views/Shared目录
  • Rp-1-5 静态文件创建规则:
业务资源:在仓库下创建静态资源时,首先先创建一个与项目名称相同的文件夹,然后在该文件夹内去创建相应的脚本文件         或图片文件。
公共的资源:
        js:在中间件仓库(Scripts目录)中创建,首先创建一个符合脚本业务的名称,然后在创建该脚本。
        css:公共样式目录(Css/public目录)中创建,首先创建一个符合样式脚本业务的名称,然后在创建该脚本。
        html:公共html模板目录(Views/Shared目录)中创建,首先创建一个符合页面业务的名称,然后在创建该脚本