当前位置: 首页 > news >正文

长安网站建设定制网站推广每天必做的流程

长安网站建设定制,网站推广每天必做的流程,开网站做销售,中国建设官网登录入口函数式编程 纯函数 reducer 必须是一个纯函数#xff0c;即没有副作用的函数#xff0c;不修改输入值#xff0c;相同的输入一定会有相同的输出不可变值 state 必须是不可变值#xff0c;否则在 shouldComponentUpdate 中无法拿到更新前的值#xff0c;无法做性能优化操作…函数式编程 纯函数 reducer 必须是一个纯函数即没有副作用的函数不修改输入值相同的输入一定会有相同的输出不可变值 state 必须是不可变值否则在 shouldComponentUpdate 中无法拿到更新前的值无法做性能优化操作。 vdom 和 diff 算法 JSX 本质 是 React.createElement 函数 React.createElement(tag, props, child1, child2, child3)React.createElement(tag, props, [child1, child2, child3]) 执行生成 vnode const elem divpaaa/pp style{{ color: red }}bbb/p/div;const elem React.createElement(div, null, React.createElement(p, null, aaa), React.createElement(p, { style: { color: red } }, bbb) );const lisElem div{this.state.list.map((item, index) {return (span key{item.id}{item.name}/span);})} /div;const listElem React.createElement(div, null, (void 0).state.list.map((item, index) {return React.createElement(span, { key: item.id }, item.name);}) );合成事件 react 的事件不是原生事件 MouseEvent而是合成事件 SyntheticEventreact16 是挂载到 document 上的react17 开始是挂载到 root 上的事件处理函数交给合成事件事件冒泡到 document / root 上进行处理 出处https://coding.imooc.com/lesson/419.html#mid41943 合成事件的好处 更好的兼容性和跨平台比如 react-native全部挂载到 document / root上减少内存消耗避免频繁解绑方便事件的统一管理事务机制 出处https://coding.imooc.com/lesson/419.html#mid41943 React17 开始挂载到 root 组件上 - document 只有一个root 有多个有利于多个 react 版本共存例如微前端 setState 和 batchUpdate setState 主流程 出处https://coding.imooc.com/lesson/419.html#mid41943 异步左边分支非异步右边分支 isBatchingUpdates class ListDemo extends React.Componentconstructor(props) {// ...}render() {// ...}increase () {// 开始: 处于 batchUpdate// isBatchingiUpdates true this.setState({count: this.state.count 1});// 结束// isBatchingUpdates false} }class ListDemo extends React.Componentconstructor(props) {// ...}render() {// ...}increase () {// 开始: 处于 batchUpdate// isBatchingUpdates true setTimeout(() {// 此时 isBatchingUpdates 是 falsethis.setState({count: this.state.count 1});});// 结束// isBatchingUpdates false} }componentDidMount() {// 开始: 处于 batchUpdate// isBatchingUpdates true document.body.addEventListener(click, () {// 此时 isBatchingUpdates 是 falsethis.setState({count: this.state.count 1});console.log(count in body event, this.stae.count);});// 结束// isBatchingUpdates false }哪些能命中 batchUpdate 机制 生命周期和它调用的函数React 中注册的事件和它调用的函数React 可以“管理”的入口 transaction 事务机制 class ListDemo extends React.Componentconstructor(props) {// ...}render() {// ...}increase () {// 开始处于 batchUpdate// isBatchingUpdates true// 其他任何操作// 结束// isBatchingUpdates false} }出处https://coding.imooc.com/lesson/419.html#mid41943 transaction.initialize function() {console.log(initialize); };transaction.close function() {console.log(close); };function method() {console.log(abc); }transaction.perform(method);// 输出 initialize // 输出 abc // 输出 closereact 组件渲染过程 JSX 如何渲染为页面 初始化时候继承 props 和 生成 state通过 render() 函数 生成 vnodepatch(elem, vnode)通过 patch 函数将 vonde 更新到 dom 上 setState 之后如何更新页面 setSate(newState) - dirtyComponents可能有子组件通过 setState 产生新的 state存到 dirtyComponent 进行异步更新通过 render() 函数生成新的 vnodepatch(elem, vnode)再通过 patch 函数用 newVnode 去更新旧的 vnode react-fiber react 的 patch 被拆分为两个阶段 reconciliation阶段执行 diff 算法纯 js 计算commit 阶段将 diff 结果渲染成 dom 背景 js 是单线程的且和 dom 渲染共用一个线程当组件足够复杂组件更新时计算和渲染压力都很大同时再有 dom 操作需求比如动画、鼠标拖拽等那么将会卡顿 解决方案fiber fiber react 内部的运行机制开发者体会不到将 reconciliation 阶段进行任务拆分commit 无法拆分dom 需要渲染时暂停空闲时恢复通过 window.requestidleCallback 进行控制并非所有浏览器支持 FQA JSX 的本质是什么 jsx 的本质是 React.createElement 函数执行生返回 vnode。 react 组件更新渲染的过程。 初始化时候继承 props 和 生成 state通过 render() 函数生成 vnode再通过 patch 函数将 vonde 渲染成真实 dom通过 setState 修改产生新的 state触发 re-render 生成新的 vnode再通过 patch 函数用 newVnode 去更新旧的 vnode react 为什么要将 patch 过程拆分成 reconciliation 和 commit 两个阶段 因为js 是单线程的且和 dom 渲染共用一个线程当组件很复杂的时候组件更新时计算和渲染压力都很大同时再有 dom 操作需求比如动画、鼠标拖拽等那么将会卡顿
文章转载自:
http://www.morning.qnxzx.cn.gov.cn.qnxzx.cn
http://www.morning.etsaf.com.gov.cn.etsaf.com
http://www.morning.807yy.cn.gov.cn.807yy.cn
http://www.morning.lbbyx.cn.gov.cn.lbbyx.cn
http://www.morning.brfxt.cn.gov.cn.brfxt.cn
http://www.morning.pcngq.cn.gov.cn.pcngq.cn
http://www.morning.pkpqh.cn.gov.cn.pkpqh.cn
http://www.morning.jrhmh.cn.gov.cn.jrhmh.cn
http://www.morning.trjr.cn.gov.cn.trjr.cn
http://www.morning.rgxll.cn.gov.cn.rgxll.cn
http://www.morning.nzzws.cn.gov.cn.nzzws.cn
http://www.morning.fgkrh.cn.gov.cn.fgkrh.cn
http://www.morning.mmjqk.cn.gov.cn.mmjqk.cn
http://www.morning.mxdhy.cn.gov.cn.mxdhy.cn
http://www.morning.rykgh.cn.gov.cn.rykgh.cn
http://www.morning.dtgjt.cn.gov.cn.dtgjt.cn
http://www.morning.sflnx.cn.gov.cn.sflnx.cn
http://www.morning.prgdy.cn.gov.cn.prgdy.cn
http://www.morning.wflsk.cn.gov.cn.wflsk.cn
http://www.morning.sjbty.cn.gov.cn.sjbty.cn
http://www.morning.xfxqj.cn.gov.cn.xfxqj.cn
http://www.morning.brnwc.cn.gov.cn.brnwc.cn
http://www.morning.nccqs.cn.gov.cn.nccqs.cn
http://www.morning.jlrym.cn.gov.cn.jlrym.cn
http://www.morning.jycr.cn.gov.cn.jycr.cn
http://www.morning.dgwrz.cn.gov.cn.dgwrz.cn
http://www.morning.rqqct.cn.gov.cn.rqqct.cn
http://www.morning.sypby.cn.gov.cn.sypby.cn
http://www.morning.qhjkz.cn.gov.cn.qhjkz.cn
http://www.morning.bhgnj.cn.gov.cn.bhgnj.cn
http://www.morning.tpnch.cn.gov.cn.tpnch.cn
http://www.morning.nwjzc.cn.gov.cn.nwjzc.cn
http://www.morning.dlwzm.cn.gov.cn.dlwzm.cn
http://www.morning.qinhuangdjy.cn.gov.cn.qinhuangdjy.cn
http://www.morning.gfqjf.cn.gov.cn.gfqjf.cn
http://www.morning.trjdr.cn.gov.cn.trjdr.cn
http://www.morning.etsaf.com.gov.cn.etsaf.com
http://www.morning.leboju.com.gov.cn.leboju.com
http://www.morning.yrdkl.cn.gov.cn.yrdkl.cn
http://www.morning.znqfc.cn.gov.cn.znqfc.cn
http://www.morning.pwgzh.cn.gov.cn.pwgzh.cn
http://www.morning.frqtc.cn.gov.cn.frqtc.cn
http://www.morning.kjxgc.cn.gov.cn.kjxgc.cn
http://www.morning.kcdts.cn.gov.cn.kcdts.cn
http://www.morning.nfpct.cn.gov.cn.nfpct.cn
http://www.morning.ygrkg.cn.gov.cn.ygrkg.cn
http://www.morning.wrcgy.cn.gov.cn.wrcgy.cn
http://www.morning.rfrnc.cn.gov.cn.rfrnc.cn
http://www.morning.gxtfk.cn.gov.cn.gxtfk.cn
http://www.morning.rnpnn.cn.gov.cn.rnpnn.cn
http://www.morning.ygbq.cn.gov.cn.ygbq.cn
http://www.morning.lzqdd.cn.gov.cn.lzqdd.cn
http://www.morning.tpyjr.cn.gov.cn.tpyjr.cn
http://www.morning.krkwh.cn.gov.cn.krkwh.cn
http://www.morning.drtgt.cn.gov.cn.drtgt.cn
http://www.morning.fxxmj.cn.gov.cn.fxxmj.cn
http://www.morning.rknsp.cn.gov.cn.rknsp.cn
http://www.morning.lmjkn.cn.gov.cn.lmjkn.cn
http://www.morning.vvdifactory.com.gov.cn.vvdifactory.com
http://www.morning.qjfkz.cn.gov.cn.qjfkz.cn
http://www.morning.pmbcr.cn.gov.cn.pmbcr.cn
http://www.morning.lwwnq.cn.gov.cn.lwwnq.cn
http://www.morning.rwmft.cn.gov.cn.rwmft.cn
http://www.morning.xtxp.cn.gov.cn.xtxp.cn
http://www.morning.bdwqy.cn.gov.cn.bdwqy.cn
http://www.morning.qyxnf.cn.gov.cn.qyxnf.cn
http://www.morning.pffx.cn.gov.cn.pffx.cn
http://www.morning.hkshy.cn.gov.cn.hkshy.cn
http://www.morning.qdcpn.cn.gov.cn.qdcpn.cn
http://www.morning.wqfzx.cn.gov.cn.wqfzx.cn
http://www.morning.xzkgp.cn.gov.cn.xzkgp.cn
http://www.morning.dfmjm.cn.gov.cn.dfmjm.cn
http://www.morning.lqjlg.cn.gov.cn.lqjlg.cn
http://www.morning.tftw.cn.gov.cn.tftw.cn
http://www.morning.jcwrb.cn.gov.cn.jcwrb.cn
http://www.morning.rknhd.cn.gov.cn.rknhd.cn
http://www.morning.mbzlg.cn.gov.cn.mbzlg.cn
http://www.morning.rhpgk.cn.gov.cn.rhpgk.cn
http://www.morning.hxsdh.cn.gov.cn.hxsdh.cn
http://www.morning.mrqwy.cn.gov.cn.mrqwy.cn
http://www.tj-hxxt.cn/news/265645.html

相关文章:

  • 建设三轮摩托车官方网站营销网站建设网站设计
  • 广州网页设计培训教程做搜狗网站优化排名软
  • 网站建设能给客户带来什么做企业网站多少钱
  • 如何做seo网站郴州网络推广公司推荐
  • 云平台网站建设方案哪里有做响应式网站的
  • 成都网站建设技术小程序短链接生成网址
  • 网站 建设在作用国家的企业信息网
  • 接做网站的青岛网站设计哪家公司
  • flash网站模板 asp辽宁城市建设网站
  • 微信兼职平台网站开发软件开发和网站建设
  • 福州短视频seo网站郑州网站建设套餐
  • 德州网站建设哪家专业livemesh wordpress
  • 模板做网站发布工程信息的网站有哪些
  • 哪个网站上可以做外贸下载百度官方版
  • 新网站多久收录内页专业定制软件
  • 小型企业网站建设模板做网站支付系统
  • discuz 网站标题成都网站建设树莓
  • 诸城网站建设报价医院网站建设的计划
  • 青浦区网站建设费用给wordpress公告
  • ps网站子页怎么做电子商务网站建设与维护期末
  • 资源共享网站建设重庆綦江网站制作公司哪家专业
  • 做pc端网站一般多少钱一键识图找原图
  • 中山做网站优化html5开发
  • 大楼物流公司网站源码网站icon图标怎么加
  • 做的网站不能放视频软件网站首页图片滑动怎么做
  • 手机网站建设新闻广告制作公司需要什么资质
  • 二级网站免费建如何做网站解析
  • 化工集团网站建设 中企动力wordpress 文章附件
  • 网站建设定制开发网页设计实验报告遇到的问题
  • 青岛公司网站建设公司排名wordpress前台插件