迷思概念:在 vue 中创建 hooks?谁告诉你 vue 有 hooks 的?

Hello,大家好,我是 Sunday。

经常在网上看到有很多同学说:"在 Vue 中创建 hooks?提升 什么什么什么"

我每次看到这样的概念时都很疑惑:hooks 应该是 react 中的概念呢,什么时候 vue 中也有 hooks 了?

本着不懂就问的态度,我去各大官方文档中搜寻了 vue + hooks 的概念,很遗憾 没有任何一个 vue 官方文档指出 vue 存在 hooks 的说法。

所以咱们今天就来看看:所谓 hooks 到底是啥?vue 中是否存在所谓的 hooks?

01:啥是 hooks?

hook 翻译过来是钩子的意思。hooks 作为复数,直译就是 多个钩子 ,在开发领域中特指 钩子函数

在开发领域,最初的 hook 是和回调钩子绑定的。比如我们常说的 git hooks 指的就是在 git 提交的时候所产生的多个回调钩子函数。

同理,在 vue 有提到 Lifecycle Hooks 的概念,翻译过来就是:生命周期钩子

这也是在 vue 官方文档中唯一和 hooks 有关联的地方了。

所以:hooks 指的仅仅是 回调钩子 而已。

02:React hooks 是什么?

React hooks 的概念最初出现在 react 16.8 (https://github.com/facebook/react/releases/tag/v16.8.0) 中:

如图所示:

React 添加了 hooks 的概念,让我们可以无需编写类组件的情况下使用 state 和其他 React 特性。

后来,随着 hooks 的逐渐发展,react 规定:在 React 中,所有内置的 Hooks 和社区约定的自定义 Hooks 函数都遵循以 use 开头的命名规则

所以 React 中是明确有 hooks 概念的。

03:vue composition API 与 react hooks 的对比

有同学会把 composition API 比作 react hooks,关于这一部分 vue 官方进行了声明

在 vue 官方文档中有这样一段话,我就不把原文列出来了,给大家做一个总结(以下内容来自 https://cn.vuejs.org/guide/extras/composition-api-faq.html#comparison-with-react-hooks 的总结

Vue 的组合式 API 不同于 React hooks。无论从 调用时机、调用限制、依赖管理、性能优化 等问题上均有差异!

所以说:Vue 是没有 hooks 概念的

总结

总体来说:hooks 一般指的是【回调钩子函数】。在 React 中存在 hooks 的明确概念,通常是以 use 开头的函数。但是 Vue 中是没有 hooks 概念的,唯一与之有关联的就是 生命周期回调钩子 了

前端训练营:1v1私教,终身辅导计划,帮你拿到满意的 offer 已帮助数百位同学拿到了中大厂 offer。欢迎来撩~~~~~~~~

相关推荐
余瑜鱼鱼鱼1 分钟前
css常用功能总结(三)(Chrome 调试工具 -- 查看 CSS 属性)
前端·css·chrome
总有刁民想爱朕ha6 分钟前
数据库行统计和字典导出工具Web版
前端·数据库
大雷神6 分钟前
HarmonyOS APP<玩转React>开源教程二十二:每日一题功能
前端·react.js·开源·harmonyos
技术钱6 分钟前
vue3基于 Vxe Table 实现可拖拽分组 + 动态求和的高级表格
javascript·vue.js
还是大剑师兰特8 分钟前
Vue3 + Element Plus 日期选择器:开始 / 结束时间,结束时间不超过今天
前端·javascript·vue.js
Robbie丨Yang9 分钟前
前端工程构建优化实践指南
前端
Irene19919 分钟前
前端序列化和反序列化总结(JSON.stringify 和 JSON.parse 的局限,自定义通用的安全序列化工具类)
前端
还是大剑师兰特9 分钟前
数组中有两个数据,将其变成字符串
开发语言·javascript·vue.js
Saga Two10 分钟前
Vue实现核心原理
前端·javascript·vue.js
技术钱11 分钟前
vue3实现时间根据系统时区转换对应的时间
javascript·vue.js