vue3新特性 compositionAPi与React.js中Hooks的异同点

1. React.js中的Hooks基本使用

React Hooks允 许你"勾入"诸如组件状态 和副作用处理等React功能中。

Hooks只能用在函数组件中,并允许我们 在不需要创建类的情况下将状态、副作用处 理和更多东西带入组件中。React核心团队 奉.上的采纳策略是不反对类组件,所以你 可以升级React版本、在新组件中开始尝试 Hooks,并保持既有组件不做任何更改。 useState和useEffect是React Hooks 中的 一些例子,使得函数组件中也能增加状态和 运行副作用。我们也可以自定义一个 Hooks,它打开了代码复用性和扩展性的新 大门。

2.Vue Composition API基本使用

Vue Composition API围绕一个新的组件 选项setup而 创建。setup) 为Vue组件提 供了状态、计算值、watcher和生命周期钩子 ,并没有让原来的API (Options-based API) 消失。允许开发者结合使用新旧两种API (向下兼容)

3.原理

React hook底层是基于链表实现,调用 的条件是每次组件被render的时候都会顺 序执行所有的hookS。

Vue hook只会被注册调用一一次,Vue 能避开这些麻烦的问题,原因在于它对数据 的响

应是基于proxy的,对数据直接代理观 察。(这种场景下,只要任何一个更改data 的地方,相关的function或者template都会 被重新计算,因此避开了React可能遇到的 性能上的问题)。React中,数据更改的时 候,会导致重新render,重新render又会重 新把hooks重新注册一一次,所以React复杂 程度会高一些。

相关推荐
jktantan1 天前
Vue keep-alive 切标签后滚动位置回顶?因为 onDeactivated 里读到的 scrollTop 是 0
前端·javascript·vue.js
总要学点什么1 天前
第89篇:三维特效-螺旋圆效果——让螺旋臂卷起一圈圈外扩的涟漪
开发语言·javascript·ecmascript·webgl·cesium·空间分析·1024程序员节
前端精髓1 天前
调用openrouter的免费API模型
java·前端·javascript
螺丝钉tina1 天前
[Playwright] [02]常用命令与调试:Debug UI、Mode和 Trace Viewer
开发语言·javascript·测试工具·ui·自动化
开开心心就好1 天前
竖式除法出题工具,整除余数混合模式
运维·服务器·前端·javascript·ocr·perl·1024程序员节
এ慕ོ冬℘゜1 天前
JS 事件循环、宏任务微任务:单线程底层原理 + 执行顺序
开发语言·javascript·ecmascript
web打印社区1 天前
Lodop排障总纲-常见报错一张表
开发语言·前端·javascript·chrome·websocket
小郎君6581 天前
(一)为什么表单需要第三种状态:disabled、readonly 与纯文本展示
前端·vue.js
程序员大阳1 天前
副队长JavaScript教程(56)-DOM之表单操作
javascript·dom·表单操作
Dxy12393102161 天前
JS AES加密详解
开发语言·javascript·ecmascript