总结react中常常被忽略的小知识点
1)即使state里设置成和之前的值一样,render也会重新渲染
2)父组件传给子组件的属性(props是只读的,在子组件中已在this.state里将属性赋值给定义的变量),如果属性在父组件中可以操作改变值的话,那么在子组件中就不建议修改,如果属性在父组件不操作,那么在子组件中就可以修改
3)通过bind绑定的函数,收到参数和事件时,事件会在参数后面,示例:
<a onClick={this.handleClick.bind(this, ‘click‘)}>click</a>
this.handleClick(param, event) // 事件对象event要放在最后
4)数组元素中的key应该在数组上下文中被指定,即当你使用一个listItem时,你应该将key放在listItem组件上,而不是listItem组件里的元素上
5)数组元素使用的key在其兄弟之间应该是唯一的,但在全局不需要唯一,比如,两个不同的数组的元素的key可以相同
6)在构造函数里定义的变量this.test,当改变this.test时,render不会重新渲染,只有状态机state有更新时,render才会重新渲染
7)构造函数是唯一能够初始化this.state的地方,在其他方法里使用this.state是错误的,一般是通过this.setState()来更新变量
8)jsx会移除空行,开始和结束的空格,字符串常量内部的换行会被压缩成一个空格
原文地址:https://www.cnblogs.com/yezi-dream/p/9992540.html
时间: 2024-10-11 20:56:08