vue3的hook,vue-hooks

  vue3的hook,vue-hooks

  本文主要介绍在Vue3中使用hook函数实现代码重用的详细说明。Vue3中的Hook函数可以帮助我们提高代码的复用性,这样我们就可以在不同的组件中使用Hook函数。

  

目录

  前言VUE2我们是怎么做到的?我们如何处理VUE3中可重用代码逻辑的封装?说了这么多,不如直接从代码看区别。

  

前言

  在项目的开发过程中,我们会遇到一些情况,就是一些代码逻辑和功能函数可以被多个组件复用,我们想复用。我们能做什么?

  

VUE2我们是怎么做的呢?

  vue2里有一个东西:mixins可以实现这个功能。mixins就是把这些相同的逻辑拉出来,每个组件只需要引入mixins就可以实现代码复用。弊端一:会涉及到被覆盖的问题组件的数据、方法、过滤器,会覆盖到Mixins中同名的数据、方法、过滤器。变量来源不明确,不利。

  

VUE3中我们怎么处理复用代码逻辑的封装呢?

  弊端二:自定义hookVue3的钩子函数相当于vue2的mixin,但是:hook是函数Vue3的钩子函数,可以帮助我们提高代码的复用性,在不同的组件中利用钩子函数。

  

说那么多,不如直接上代码来看差异

  Vue3中我们可以:

  模板

  img alt=Vue logo src=。/assets/logo.png /

  差异

  VUE3中的挂钩

  /div

  Button @click=setNumber 点击此按钮调用setNumber函数,号码将为1: {{mynumber}}/button

  Button @click=a 单击此按钮,号码将为1: {{a}}/button

  Button @ click= b-单击此按钮,号码将为-1: {{b}}/button

  /模板

  脚本

  从“vue”导入{ reactive,ref,computed,watch,watch effect };

  导出默认值{

  setup(){

  const myNumber=ref(0)

  const a=ref(0)

  const b=ref(0)

  常量集合编号=()={

  my number . value=my number . value 1;

  }

  手表([a,b],([newA,newB],[oldA,oldB])={

  console.log(newA,oldA:)

  console.log(newA,oldA)

  console.log(newA,oldB:)

  console.log(newA,oldB)

  })

  返回{

  我的号码,

  一,

  b,

  setNumber

  }

  }

  }

  /脚本

  风格

  #app {

  字体系列:Avenir,Helvetica,Arial,无衬线;

  -webkit-font-smoothing:抗锯齿;

  -moz-osx-font-smoothing:灰度;

  文本对齐:居中;

  颜色:# 2c3e50

  边距-顶部:60px

  }

  按钮{

  显示:块;

  边距:0自动;

  }

  /风格

  先来一段我们的一把梭代码,代码没有复用,全都放到当前组件

  以上是原写。如果其中有几个我们需要重用的变量呢?例如,这些变量和函数需要在其他函数中使用。我们做什么呢?我们试试hook方法~ ~我们新建一个文件,src \ common-hooks \ number change . js把上面的代码剪成src \ common-hooks \ number change . js,然后用这个来覆盖:export const use number=()={ } import { ref,watch} from vue。

  导出常量useNumber=()={

  const myNumber=ref(0)

  const a=ref(0)

  const b=ref(0)

  常量集合编号=()={

  my number . value=my number . value 1;

  }

  手表([a,b],([newA,newB],[oldA,oldB])={

  console.log(newA,oldA:)

  console.log(newA,oldA)

  console.log(newA,oldB:)

  console.log(newA,oldB)

  })

  返回{

  我的号码,

  一,

  b,

  setNumber

  }

  }

  执行代码看一下:

  脚本

  从导入{ useNumber }。/common-hooks/number change ;

  导出默认值{

  setup() {

  const { myNumber,a,b,set number }=use number();

  返回{ myNumber,a,b,set number };

  },

  };

  /脚本

  关于Vue3使用hooks函数进行代码重用的详细说明,本文到此结束。有关Vue3hooks函数的更多信息,请搜索我们以前的文章或继续浏览下面的相关文章。希望大家以后能多多支持我们!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: