欢迎来到代码驿站!

vue

当前位置:首页 > 网页前端 > vue

vue3中的hook简单封装

时间:2022-07-30 10:56:26|栏目:vue|点击:

vue3的hook封装

vue3最新鲜的就是组合式API了,通过组合式API我们可以把一些复杂的逻辑或一些常用的逻辑封装成一个个hook来进行调用,这样的方式也更易于维护。

使用

import useTest from "../../hooks/useTest";
export default defineComponent({
  name: "vue3Test",
  setup: () => {
    let refTest = ref(111); // 单个值用ref
    const { testHook } = useTest({ value: refTest });
    return { refTest, testHook };
  }
});

useTest

import { Ref, ref, reactive, watch } from "vue";
export default function ({ value }: { value: Ref<number> }) {
  let testHook = ref(1000);
  let testReactiveHook = reactive({
    name: "234567i",
  });
  watch(value, () => {
    testHook.value = testHook.value + value.value;
    testReactiveHook.name = "343453453453434";
  });
  return {
    testHook,
    testReactiveHook,
  };
}

简单的封装了一个hook进行学习,vue3的hook和react的hook差别并不大因此对比react上手vue3还是比较快的

vue3的hooks总结

vue3中的hooks其实是函数的写法,就是将文件的一些单独功能的js代码进行抽离出来,放到单独的js文件中。这样其实和我们在vue2中学的mixin比较像。

下面总结一下如何去书写hooks

首先应该先建立一个hooks文件夹:其目的是为了存放hook文件。

在这里插入图片描述

建立相关的hook文件:一般使用use开头。 

计数器的hook

在这里插入图片描述

useTitle的hooks

s

useScrollPostion用来监测浏览器页面的滚动情况

在这里插入图片描述

useMousemove监听鼠标位置的hook

在这里插入图片描述

useLocalStorage可以本地存储

在这里插入图片描述

上一篇:Vue商品控件与购物车联动效果的实例代码

栏    目:vue

下一篇:基于Vue3的全屏拖拽上传组件

本文标题:vue3中的hook简单封装

本文地址:http://www.codeinn.net/misctech/209392.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有