Vue3前端框架hooks详解

一、说明

hooks直译是“钩子”,它并不仅是vue框架中才有的内容,甚至不仅是前端界的专用术语,而是整个行业所熟知的用语。

通常指:系统运行到某一时期时,会调用被注册到该时机的回调函数。

比较常见的钩子有:windows系统的钩子能监听到系统的各种事件,浏览器提供的onload或addEventListener能注册在浏览器各种时机被调用的方法。以上这些,都可以被称一声"hook"。

    但是很显然,在特定领域的特定话题下,hooks这个词被赋予了一些特殊的含义。

    在之前学习的生命周期,就是非常经典的hooks。

二、案例2.1、说明

需求:有两个组件,分别是Home.vue和About.vue,这两个组件中都需要有一个计数器的功能。思路:可以把该计数器的功能封装到一个组件中来完成复用。不过此时还有一个细微的差别,就是这个计数器其实是一个功能,而我们以前说的组件是对UI层面的复用,虽然也可以实现,但是总觉得不是那回事。所以我们可能想到的是就是在每个组件中去实现一次计数器的功能。

2.2、代码案例

步骤一:定义Home.vue组件

步骤二:定义About.vue组件

步骤三:编写App.vue组件

2.、效果2.4、思考分析

我们发现,About.vue组件和Home.vue针对计数器的操作都是重复的代码,实际上,我们可以把这些重复性的代码给封装起来,即:把针对计数器操作的完整的功能逻辑给封装到一个单独的js文件中,这个js文件我们往往会放在一个叫做hooks的文件夹中,并且针对这个封装的js文件,命名往往是以use开头。

2.5、代码改进优化

封装的代码如下:

购买专栏解锁剩余15%


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