ReactJS学习笔记(三)

时间:2021-09-17 17:03:57
需要注意的问题:
1.组件名称开头字母一定要大写。(PS:原因是 React 的 JSX 里约定分别使用首字母大、小写来区分本地组件的类和 HTML 标签。)
2.this.props.children:表示组件的所有子节点(!没有子节点时就是undefined,如果有一个子节点,数据类型是Object,多个节点时,数据类型就是array
3.因为promise是异步的,所以render时要检测
4.通过 AJAX 加载初始数据,在 componentDidMount 时加载数据。当加载成功,将数据存储在 state 中,触发 render 来更新你的 UI。当执行同步请求的响应时,在更新 state 前, 一定要先通过 this.isMounted() 来检测组件的状态是否还是 mounted。
5.设置class要写classname(以前的版本,新版本可以直接写class了)
6.每个React组件只能渲染一个根节点,如果你想返回多个节点,它必须包含在一个节点里。
7.Key要加前缀。
8. 性能的瓶颈大多是因为 DOM 更新,而非 JS 执行,而且 React 会通过批量更新和变化检测来优化性能。
9. mixin不应该污染state,所以他也没有 setState 方法。
mixin应该只提供接口(即方法),不应该提供任何属性。
mixin内部的属性最好是通过闭包的形式作为私有变量存在。
最好不要放到this上,避免污染。
mixin 需要在组件销毁时做资源清理操作。
10.getDOMNode弃用,改用findDOMNode,是ReactDom的一个方法。
11. onScroll 在 IE8 中不起作用。