Vue3 + Hook 手把手解析

前言:为什么要用hook?hook是干什么的?

谈谈我自己的理解: hook是为了封装一个完整的功能,包括了从定义变量和方法的所有代码。

什么意思呢?

比如说:正常我们做界面展示正常流程是:

1,在本界面定义一个ref变量

<script setup>

        let showNum = ref(0)

</script>

2,对变量进行操作的方法

比如递增:

<script setup>

        function addNum() {

               showNum.value ++

        }

</script>

3,界面有一个按钮来执行这个方法

<template>

        <span @click="clickToAdd" /> 

</template>

-----------------------------------------------------------------------------

<script setup>

  clickToAdd() {

        addNum()

}

</script>

ok,一个简单的功能实现,这样写没有问题

但如果代码量增加,需要我们维护的时候,我们就需要去找定义的变量和对应的方法,找的过程过于烦人。

那我能不能有什么方式实现把变量和方法都放在一起,比如说一个js文件里?

到时候我来维护就知道对应的变量和方法全在这个js文件里,是不是方便了很多?

这样的写法就称之为:hook。

实现:现在我们来转为hook写法。

hook.js中定义我们的变量和方法

 vue中引入和使用:

<script setup>

import useHook from './hook';

let { num, addNum } = useHook();

const clickToAdd= () => {

  addNum();

};

</script>

<template>

   <span @click="clickToAdd" /> 

</template>

有人会说那vue文件还是定义了变量及方法啊?

其实不然变量创建过程以及方法具体内容都在hook.js。

因此:vue文件我们以后维护就不需要关心,只需要关心hook.js即可。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值