首页 > 其他分享 >自定义hook函数

自定义hook函数

时间:2023-07-10 22:44:12浏览次数:38  
标签:vue 函数 自定义 point hook import ref usePoint

  • 什么是hook?—— 本质是一个函数,把setup函数中使用的Composition API进行了封装。

  • 类似于vue2.x中的mixin。

  • 自定义hook的优势: 复用代码, 让setup中的逻辑更清楚易懂。

 

创建hook3文件夹

新建usePoint.js文件(文件名以userxxx命名)

 

app.vue

<template>
  <button @click="isShow = !isShow">展示/隐藏</button>
  <Demo4 v-if="isShow"></Demo4>
</template>

<script>

import Demo4 from './components/Demo4'
import {ref} from 'vue'

export default {
  name: 'App',
  components:{
    Demo4
  },
  setup() {
    let isShow = ref(true)

    return {isShow}
  }
 
}
</script>

<style>

</style>

  

Deme4.vue

<template>
  <h2>当前求和为:{{sum}}</h2>
  <button @click="sum++">点我+1</button>
  <hr>
  <h2>当前点击时鼠标的坐标为:x - {{point.x}},y - {{point.y}}</h2>
</template>

<script>
import {ref} from 'vue'
import usePoint from '../hooks/usePoint';

export default {
  name: 'Demo',
  setup() {
    let sum = ref(0)
    
    let point = usePoint()

    //返回一个对象
    return{sum,point}

  }
 
}
</script>

<style>

</style>

 

 

  

 

标签:vue,函数,自定义,point,hook,import,ref,usePoint
From: https://www.cnblogs.com/ixtao/p/17542581.html

相关文章

  • sql记录:FIELD函数解决mysql中in传值顺序问题
    1.问题描述in查询的结果传值顺序与结果显示顺序不一致,默认对id进行排序显示结果,eg:如果是5号用户先点赞,1号用户后点赞,但是查询结果是1号用户显示在5号用户的前面,也就是说导致结果1号用户先点赞,5号用户后点赞,需要使用FIELD函数解决2.问题解决SELECTid,phone,password,nick_n......
  • 使用递归函数来实现输入正整数,将正整数分解鸡(质因)数
    介绍一下递归函数:当我们定义一个函数时,如果函数内部调用了自身,那么这个函数就称为递归函数。递归函数是一种解决问题的方法,它将大问题分解为相同或类似的小问题,并通过逐步解决这些小问题来解决整个问题。使用递归函数的核心思想是将一个问题拆解为更简单的子问题,并且解决子问题的方......
  • springcloud -sentinel 用户自定义限流错误处理(仅限限流异常,其他异常请使用fallback属
    pom依赖<!--SpringCloudailibabanacos--><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency>......
  • pytest + yaml 框架 -49.allure报告自定义内容
    前言v1.4.0版本支持allure报告自定义内容用例添加allure描述用例中可以通过dynamic添加以下内容allure.dynamic.featureallure.dynamic.linkallure.dynamic.issueallure.dynamic.testcaseallure.dynamic.storyallure.dynamic.titleallure.dynamic.description在t......
  • Vue3 的 hook函数
    Vue3的hook函数相当于vue2的mixin,不同在于hooks是函数;Vue3的hook函数可以帮助我们提高代码的复用性,让我们能在不同的组件中都利用hooks函数;其实就是代码的复用,可以用到外部的数据,生命钩子函数...,具体怎么用直接看代码,//一般都是建一个hooks文件夹,都写在里面impor......
  • 第3章 自定义控件2
    3强大的附加属性所以你正在构建一个令人惊喜的新应用程序,你需要一种在现有控件中没有直接支持的行为。你确信除了创建子类并为自己创建一堆工作外,没有其他方法来扩展现有的控件功能。是时候创建子类了,对吗?WPF提供了一项创新功能,称为附加属性,它可以用于向现有控件添加行为。这些......
  • 高等数学——函数的极限
    函数的极限定义\(x\)趋于有限数\(a\)的极限。\[x\toa,f(x)\tob\]\(f(x)\)在\(x_{0}\)的去心领域内有定义(在\(x_{0}\)处可以没有定义)。若\(\existsA,\forall\delta>0,0<|x-x_{0}|<\delta\)时,$|f(x)-A|<\varepsilon$,则:\[\lim_{x\tox_{0}}f(x)=A\t......
  • 作用域和自执行函数
        一、变量作用域1.1局部变量functionjb(){vara="我是局部变量"returna;}1.2全局变量vara="我是全局变量"functionjb(){console.log(a)}console.log(a)二、自执行函数在加载的时候这个自执行函数就能自己运行!(function(){......
  • Camstar表格自定义写js,实现单元格合并。
     效果: ......
  • 反三角函数
    反三角函数反三角函数是反函数。正弦函数\(y=\sinx\)的反函数为\(y=\arcsinx\)。正弦函数的定义域为\(D=(-\infty,+\infty)\),值域为\(R=[-1,1]\)。其反函数的定义域\(D=[-1,1]\),值域为\(R=[-\frac{\pi}{2},\frac{\pi}{2}]\)。\(x\)\(-1\)\(-\frac{\sqrt{3}}......