所在的位置: 前端 >> 前端市场 >> React18全览

React18全览

在北京治疗白癜风大概多少钱 http://pf.39.net/bdfyy/bdfzg/141130/4527136.html
?????♀?编编按:本文作者是蚂蚁集团前端工程师尽龙,文中详细介绍了React18的所有特性,期望能用大白话让更多人迅速掌握React18。在年6月8号,React公布了v18版本的发布计划,并发布了alpha版本。经过将近一年的发布前准备,在年3月29日,React18正式版终于和大家见面了。React18应该是最近几年的一个重磅版本,React官方对它寄予了厚望。不然也不会将React17作为一个过渡版本,也不会光发布准备工作就做了一年。在过去一年,我们已经或多或少了解到一些React18的新功能。这篇文章我会通过丰富的示例,向大家系统的介绍React18带来的改变。当然本文融入了很多个人理解,如有不对,烦请指正。ConcurrentMode

ConcurrentMode(以下简称CM)翻译叫并发模式,这个概念我已经听了好多年了,并且一度非常担忧

React官方憋了好多年的大招,会不会是一个破坏性不兼容的超级大版本?就像VUEv3和v2。现有的生态是不是都得跟着大版本升级?比如antdesign,ahooks等。

随着对CM的了解,我发现它其实是人畜无害的。

CM本身并不是一个功能,而是一个底层设计,它使React能够同时准备多个版本的UI。

在以前,React在状态变更后,会开始准备虚拟DOM,然后渲染真实DOM,整个流程是串行的。一旦开始触发更新,只能等流程完全结束,期间是无法中断的。

在CM模式下,React在执行过程中,每执行一个Fiber,都会看看有没有更高优先级的更新,如果有,则当前低优先级的的更新会被暂停,待高优先级任务执行完之后,再继续执行或重新执行。

CM模式有点类似计算机的多任务处理,处理器在同时进行的应用程序之间快速切换,也许React应该改名叫ReactOS了。

这里举个例子:我们正在看电影,这时候门铃响了,我们要去开门拿快递。在React18以前,一旦我们开始看电影,就不能被终止,必须等电影看完之后,才会去开门。而在React18CM模式之后,我们就可以暂停电影,等开门拿完快递之后,再重新继续看电影。

不过对于普通开发者来说,我们一般是不会感知到CM的存在的,在升级到React18之后,我们的项目不会有任何变化。

我们需要


转载请注明:http://www.aierlanlan.com/rzdk/524.html