1.React 中 keys 的作用是什么?
keys是React中用来追踪列表中哪些元素被修改,被添加,被删除的辅助标识。
我们需要保证每个元素的key值在同级元素中是唯一的,在React Diff算法中会借助key值来判断该元素是原来就有的还是新增的,从而避免不必要的元素重渲染。此外,React 还需要借助 Key 值来判断元素与本地状态的关联关系。
2.调用 setState 之后发生了什么?
React会将传入的参数对象与当前组件的状态合并,然后触发调和过程,调和之后,React会用相对高效的方式来创建新的元素树,构建好新的元素树后,React会自动计算出新老树的节点差异,根据差异对UI界面进行最小化重渲染。
3.react 生命周期函数
- 初始化阶段
getDefaultProps:获取实例的默认属性(用在你定义组件是React.createClass方式,如果es6的语法,例如用的是class XX extends React.Component的话,而是应该用 static propTypes ={}来定义)
getInitialState: 获取每个实例的初始化状态(getDefaultProps设置默认的 props,getInitialState设置初始的state在使 用 es6的class语法时是没有这个钩子函数的,可以直接在construc