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复杂 程度会高一些。

相关推荐
Moment7 小时前
富文本编辑器在 AI 时代为什么这么受欢迎
前端·javascript·后端
爱敲代码的小鱼8 小时前
AJAX(异步交互的技术来实现从服务端中获取数据):
前端·javascript·ajax
吹牛不交税8 小时前
admin.net-v2 框架使用笔记-netcore8.0/10.0版
vue.js·.netcore
MZ_ZXD0019 小时前
springboot旅游信息管理系统-计算机毕业设计源码21675
java·c++·vue.js·spring boot·python·django·php
铅笔侠_小龙虾10 小时前
Flutter 实战: 计算器
开发语言·javascript·flutter
大模型玩家七七10 小时前
梯度累积真的省显存吗?它换走的是什么成本
java·javascript·数据库·人工智能·深度学习
2501_9447114310 小时前
JS 对象遍历全解析
开发语言·前端·javascript
发现一只大呆瓜11 小时前
虚拟列表:支持“向上加载”的历史消息(Vue 3 & React 双版本)
前端·javascript·面试
阔皮大师11 小时前
INote轻量文本编辑器
java·javascript·python·c#
lbb 小魔仙11 小时前
【HarmonyOS实战】React Native 表单实战:自定义 useReactHookForm 高性能验证
javascript·react native·react.js