React组件规范
---------------------------
# 文件命名
? 每一个文件只包含一个组件 每一个基本组件只包含单一功能 ?
? 如果文件返回是一个类 文件名首字母大写 ?
? 测试用例文件名使用.spec.jsx后缀 ?
? 每一个组件使用一个单独的测试用例文件 ?
# Js规范
? 使用es6 开发 尽量使用常用的ES6 语法 ?
? 使用jsx语法 ?
? 组件文件命名使用大驼峰 ComponentDemo ?
? 带命名空间的组件 如果一个组件包含只有自身使用的子组件 以该组件为命名空间编写组件 例如Table Table.Head ?
? 不使用displayName命名 ?
? 自定义属性使用data- ?
? 使用propTypes进行props类型校验 ?
? 使用defaultProps定义默认参数 ?
? 定义props避开react关键字及保留字 常用的props及state定义可参考下表 ?
? 尽量少或者不使用ref获取和操作dom节点 使用state和prop进行控制dom 如遇必须使用的情况 添加详细注释信息 ?
? 事件调用使用在元素上onClick调用 ?
? 注意 react和html的表单元素的差异 ?
? 不支持mixin 使用decorator进行扩展和高阶组件方式扩展。 ?
? 不能私自添加第三方js库 如需要使用 必须通知本组组长 并在工作群里提出 At所有前端负责人 经讨论后再添加
? 尽量多而有用的代码注释 方法使用块级注释 ?
? 避免使用定时器类的编码 如必须使用 需添加详细注释 各组长合并代码时需要审查是否合理 合确认是否含有销毁方法 ?
? 自身定义的props属性应避免与react的关键字相同 ?
# 样式规范
? 在添加src/style/theme/default.sess中添加公共样式变量 各开发人员尽可能使用里面定义的公共样式变量 ?
? 组件多样式调用 使用classnames模块 进行样式处理 使用className调用 ?
? 所有组件类名命名以‘expo-’开头 ?
# 通用组件接口规范
|参数|说明|类型|默认值|
|:-------|:---------|:-----|:-----|
|size|尺寸string|medium|
|color|颜色|string| |
|shape|形状|string| |
|disabled|是否禁用|bool|false|
|className|增加额外的类名|string| |
|htmlType|html dom 的 type 属性||string| |
|style|内联样式|object| |
# 参考链接
? [airbnb规范](https://github.com/airbnb/javascript/tree/master/react#class-vs-reactcreateclass-vs-stateless) ?
? [代码规范](https://github.com/react-component/react-component.github.io/blob/master/docs/zh-cn/code-style/js.md) ?
案例背景 高校健康打卡项目发起于北京大学软件与微电子学院,是该学院张齐勋老师...
客户简介 趣医网(quyiyuan.com)创立于2014年,为京颐集团重要成员企业之一,是...
API风格说明 当前ECS服务对外开放两类风格的API: ECS服务自定义规范的API(以下...
注册了 域名 不备案可以吗?可以的。 注册域名 并不是一定要备案的,只有搭 建网...
排查思路 无法通过远程桌面连接裸金属服务器时,我们推荐您按照以下思路排查问题...
云虚拟主机 可以干什么?云 虚拟主机 可以是搭 建网站 的重要产品,可用来存放网...
??提到慕尼黑,大家第一个想到总是啤酒节,其实慕尼黑的文化同样闻名世界。慕尼...
客户简介 全民直播是一家涵盖游戏、娱乐、户外等多领域泛娱乐的直播平台。2015年...
公司介绍 我们公司是全球法律服务整合平台,已有的4万多名律师遍布全国359个城市...
3月24日,腾讯发布2020年Q4及全年财报,其中金融科技及企业服务第四季收入385亿...