随笔分类 -  react

摘要:redux 工作流程 view->dispatch:action->store:dispatch方法里面自动调用reducer,生成新的state,store监听到state的变化就调用listener,更新view 阅读全文
posted @ 2020-09-12 19:58 xxcnhj 阅读(127) 评论(0) 推荐(0)
摘要:React diff算法 React通过引入虚拟dom的概念,避免了无效的dom操作,提高了dom的构建效率,为了高效的对比新旧虚拟dom树的异同引入了diff算法,react对diff算法进行了自己的优化,virtual Dom + diff; diff算法策略分为,tree diff,compo 阅读全文
posted @ 2020-09-12 19:57 xxcnhj 阅读(168) 评论(0) 推荐(0)
摘要:React的Key用来干嘛? 用于辅助react来追踪被增加,删除,移动的元素,同级元素的key必须具有唯一性 react在diff算法中,会根据key来判断某个元素是新增还是移动过来的,从而避免没必要的渲染 切记不要使用index,Math.random来作为元素的key。会造成额外的性能开销 阅读全文
posted @ 2020-09-12 19:55 xxcnhj 阅读(196) 评论(0) 推荐(0)
摘要:React的生命周期 在React 15.x版本或者之前的版本,生命周期只有三个阶段 在React 16.3之后新增了一个;有12个钩子函数,四个阶段分别为:初始化,运行中,销毁,错误处理 组件从创建到销毁的过程被称为组件的生命周期,通常分为三个阶段:挂载阶段,更新阶段,卸载阶段 Mounting: 阅读全文
posted @ 2020-09-12 19:54 xxcnhj 阅读(2531) 评论(0) 推荐(0)
摘要:1.在回答这个问题之前,我们先来做一个假设; 如果setState是同步的,意味着每执行一次setState就会进行vnode diff+dom修改, 如果是异步,就可以把一个同步代码中的多个setState合并成一次组件更新; 2.setState什么时候是同步? 在setTimeOut或者原生事 阅读全文
posted @ 2020-09-12 15:22 xxcnhj 阅读(1033) 评论(0) 推荐(0)