最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue3中hooks的概述及用法小結(jié)

 更新時(shí)間:2023年03月07日 14:26:06   作者:一只愛(ài)吃糖的小羊  
這篇文章是介紹一下vue3中的hooks以及它的用法,主要圍繞兩點(diǎn)來(lái)介紹,一個(gè)是hooks基本概念,另一個(gè)是vue3中hooks的使用方法,本文結(jié)合實(shí)例代碼給大家講解的非常詳細(xì),需要的朋友參考下吧

大家好,今天這篇文章是介紹一下vue3中的hooks以及它的用法。本文內(nèi)容主要有以下兩點(diǎn):

  • 什么是hooks
  • vue3中hooks的使用方法

一、 什么是hooks

hook是鉤子的意思,看到“鉤子”是不是就想到了鉤子函數(shù)?事實(shí)上,hooks 還真是函數(shù)的一種寫(xiě)法。

vue3 借鑒 react hooks 開(kāi)發(fā)出了 Composition API ,所以也就意味著 Composition API 也能進(jìn)行自定義封裝 hooks。

vue3 中的 hooks 就是函數(shù)的一種寫(xiě)法,就是將文件的一些單獨(dú)功能的js代碼進(jìn)行抽離出來(lái),放到單獨(dú)的js文件中,或者說(shuō)是一些可以復(fù)用的公共方法/功能。其實(shí) hooksvue2 中的 mixin 有點(diǎn)類似,但是相對(duì) mixins 而言, hooks 更清楚復(fù)用功能代碼的來(lái)源, 更清晰易懂。

二、hooks的用法

1.在src中創(chuàng)建一個(gè)hooks文件夾,用來(lái)存放hook文件

2.根據(jù)需要寫(xiě)hook文件,比如要實(shí)現(xiàn)一個(gè)功能就是在 點(diǎn)擊頁(yè)面時(shí),記錄鼠標(biāo)當(dāng)前的位置,可以在hooks文件夾中新建一個(gè)文件useMousePosition.ts

// src/hooks/useMousePosition.ts
import { ref, onMounted, onUnmounted, Ref } from 'vue'

interface MousePosition {
  x: Ref<number>,
  y: Ref<number>
}
function useMousePosition(): MousePosition {
  const x = ref(0)
  const y = ref(0)

  const updateMouse = (e: MouseEvent) => {
    x.value = e.pageX
    y.value = e.pageY
  }

  onMounted(() => {
    document.addEventListener('click', updateMouse)
  })

  onUnmounted(() => {
    document.removeEventListener('click', updateMouse)
  })

  return { x, y }
}

export default useMousePosition

3.hook文件的使用:在需要用到該hook功能的組件中的使用,比如在 test.vue文件中:

// src/views/test.vue
<template>
  <div>
    <p>X: {{ x }}</p>
    <p>Y: {{ y }}</p>
  </div>
</template>

<script lang="ts">
import { defineComponent} from 'vue'
// 引入hooks
import useMousePosition from '../../hooks/useMousePosition'
export default defineComponent({
  setup () {
    // 使用hooks功能
    const { x, y } = useMousePosition()

    return {
      x,
      y
    }
  }
})
</script>

以上就是vue3中hooks的使用,是不是覺(jué)得特別的簡(jiǎn)單清晰。

到此這篇關(guān)于vue3中hooks的介紹及用法的文章就介紹到這了,更多相關(guān)vue3中hooks用法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue2中Class?Component的使用指南

    Vue2中Class?Component的使用指南

    Vue.js?以其簡(jiǎn)單易用和靈活性受到了廣大開(kāi)發(fā)者的喜愛(ài),然而,隨著項(xiàng)目的復(fù)雜度增加,組件的管理和組織也變得越來(lái)越重要,下面我們就來(lái)看看如何通過(guò)vue-class-component編寫(xiě)更加優(yōu)雅和結(jié)構(gòu)化的組件
    2024-11-11
  • vue中引入路徑@的用法及說(shuō)明

    vue中引入路徑@的用法及說(shuō)明

    這篇文章主要介紹了vue中引入路徑@的用法及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • 使用vue+element?ui實(shí)現(xiàn)走馬燈切換預(yù)覽表格數(shù)據(jù)

    使用vue+element?ui實(shí)現(xiàn)走馬燈切換預(yù)覽表格數(shù)據(jù)

    這次做項(xiàng)目的時(shí)候遇到需要切換預(yù)覽表格數(shù)據(jù)的需求,所以下面這篇文章主要給大家介紹了關(guān)于使用vue+element?ui實(shí)現(xiàn)走馬燈切換預(yù)覽表格數(shù)據(jù)的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • Vue讀取本地靜態(tài).md并側(cè)邊欄導(dǎo)航跳轉(zhuǎn)、展示.md文件的操作方法

    Vue讀取本地靜態(tài).md并側(cè)邊欄導(dǎo)航跳轉(zhuǎn)、展示.md文件的操作方法

    這篇文章主要介紹了Vue讀取本地靜態(tài).md并側(cè)邊欄導(dǎo)航跳轉(zhuǎn)、展示.md文件,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-08-08
  • vue3中vue-meta的使用方法解析

    vue3中vue-meta的使用方法解析

    這篇文章主要介紹了vue3中vue-meta的使用方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Vue實(shí)現(xiàn)靜態(tài)資源的OSS部署的完整指南

    Vue實(shí)現(xiàn)靜態(tài)資源的OSS部署的完整指南

    在大型前端項(xiàng)目的生產(chǎn)環(huán)境部署中,靜態(tài)資源(JS、CSS、字體文件等)通常占據(jù)較大的體積,將這些資源部署到對(duì)象存儲(chǔ)服務(wù)(OSS)并通過(guò) CDN 加速,可以帶來(lái)很多優(yōu)勢(shì),所以本文給大家介紹了Vue實(shí)現(xiàn)靜態(tài)資源的OSS部署的完整指南,需要的朋友可以參考下
    2025-11-11
  • vue3 reactive定義的引用類型直接賦值導(dǎo)致數(shù)據(jù)失去響應(yīng)式問(wèn)題

    vue3 reactive定義的引用類型直接賦值導(dǎo)致數(shù)據(jù)失去響應(yīng)式問(wèn)題

    這篇文章主要介紹了vue3 reactive定義的引用類型直接賦值導(dǎo)致數(shù)據(jù)失去響應(yīng)式問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • vue.js+ElementUI實(shí)現(xiàn)進(jìn)度條提示密碼強(qiáng)度效果

    vue.js+ElementUI實(shí)現(xiàn)進(jìn)度條提示密碼強(qiáng)度效果

    這篇文章主要介紹了vue.js+ElementUI實(shí)現(xiàn)進(jìn)度條提示密碼強(qiáng)度效果,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-01-01
  • Vuex模塊化和命名空間namespaced實(shí)例演示

    Vuex模塊化和命名空間namespaced實(shí)例演示

    這篇文章主要介紹了Vuex模塊化和命名空間namespaced的相關(guān)知識(shí),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-11-11
  • VUE的數(shù)據(jù)代理與事件詳解

    VUE的數(shù)據(jù)代理與事件詳解

    這篇文章主要為大家介紹了VUE的數(shù)據(jù)代理與事件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2021-11-11

最新評(píng)論

天峨县| 周宁县| 怀仁县| 六安市| 平山县| 获嘉县| 江城| 察雅县| 陕西省| 休宁县| 宁德市| 扎兰屯市| 曲阳县| 曲麻莱县| 平武县| 金坛市| 南皮县| 黎城县| 西安市| 收藏| 定陶县| 聂荣县| 保康县| 长寿区| 内丘县| 浮山县| 沾益县| 大同县| 东方市| 海宁市| 舒城县| 宜君县| 忻城县| 丹凤县| 呈贡县| 茂名市| 肃北| 绥阳县| 兖州市| 赤壁市| 伊金霍洛旗|