React/JSX 编码规范(笔记简记)

1、每个文件只写一个模块,不要使用React.createElement;

2、模块中既没有状态又没有引用refs时,使用普通函数,否则推荐使用class extends React.Component而不是React.createClass;

3、不要使用Mixins,避免增加到隐式依赖,导致的命名冲突,进而避免增加复杂度;(可用组件化、高阶组件、工具模块等代替)

4、react模块用.jsx扩展名;

5、文件名使用帕斯卡命名;

6、引用用帕斯卡命名,实例用驼峰命名;如:const messageBox=

7、若整个文件夹是一个模块,使用index.js作为入口文件;

8、使用高阶模块生成的新模块命名,应使用两个模块名的组合,如withFoo(Bar);

9、避免使用DOM相关的属性来用作其他的用途;(难阅读、难维护)

10、避免使用displayName命名React模块,使用引用来命名,如class名;

11、代码对齐格式:

(1)若能在一行显示,写成一行;

(2)若有多行属性,关闭标签新建一行;

12、JSX属性值使用双引号,其它均使用单引号

13、JSX属性名使用驼峰命名法;

14、在自动关闭的标签前加一个空格;

15、不要在JSX的{}里边两边加空格;

16、将多行的JSX标签写在()中;

17、使用有效正确的role值;

18、不要在标签上使用accessKey,避免屏幕助读器在键盘快捷键与键盘命令时造成的不统一,进而导致更复杂的阅读性;

19、避免使用数组的index来作为属性的key,推荐使用唯一的ID;

20、对于所有非必需的属性,手动定义defaultProps;

21、尽可能少使用扩展运算符,避免传递无效的html属性;

22、总是在refs中使用回调函数;

23、没有子元素的标签要自己关闭;

24、在render()中使用事件处理方法时,在构造函数中绑定this;

25、不要给所谓的私有函数加_前缀;(js中不支持私有变量)

26、在render中确保有return返回值;

你可能感兴趣的:(React/JSX 编码规范(笔记简记))