自定义hook是什么

简介: 自定义hook是什么

使用Vue3的组合API封装的可复用的功能函数

自定义hook的作用类似于vue2中的mixin技术

自定义Hook的优势: 很清楚复用功能代码的来源, 更清楚易懂7

首先在src文件夹下定义一个hooks文件夹,在文件夹下创建一个index.js文件,然后在文件中写下以下代码

import { ref, onMounted, onUnmounted } from 'vue'
/*
收集用户鼠标点击的页面坐标
*/
export default function useMousePosition () {
// 初始化坐标数据
const x = ref(-1)
const y = ref(-1)
// 用于收集点击事件坐标的函数
const updatePosition = (e: MouseEvent) => {
x.value = e.pageX
y.value = e.pageY
}
// 挂载后绑定点击监听
onMounted(() => {
document.addEventListener('click', updatePosition)
})
// 卸载前解绑点击监听
onUnmounted(() => {
document.removeEventListener('click', updatePosition)
})
return {x, y}
}

然后再在某个使用到index.js功能的组件引入js文件,例如:

<template>
    <div>
        <h2>x: {{x}}, y: {{y}}</h2>
    </div>
</template>
<script>
import { ref } from "vue"
/*
在组件中引入并使用自定义hook
自定义hook的作用类似于vue2中的mixin技术
自定义Hook的优势: 很清楚复用功能代码的来源, 更清楚易懂
*/
import useMousePosition from './hooks/useMousePosition'
    export default {
        setup() {
        const {x, y} = useMousePosition()
            return {
                x,
                y
            }
        }
    }
</script>
相关文章
|
7月前
|
人工智能 安全 API
OpenClaw保姆级教程:阿里云/本地部署配置百炼Coding Plan API+核心Skill清单及常见问题解答
2026年,OpenClaw(昵称“小龙虾”)的核心价值早已不是“能聊天”,而是通过Skills(技能插件)连接工具、网站与系统,实现从“对话建议”到“落地执行”的跨越。但多数用户部署后陷入“装而不用”的困境——要么盲目堆砌技能导致功能冲突,要么忽视安全风险不敢用于关键场景。
1251 1
|
9月前
|
人工智能 弹性计算 API
2026阿里云人工智能PAI免费试用:PAI-EAS模型在线服务A10/V100等500元1个月
阿里云PAI推出模型在线服务PAI-EAS,支持Qwen3、Llama等主流模型一键部署为高可用API,弹性伸缩、GPU加速,新用户享500元代金券,免费试用A10/V100等GPU实例,助力低成本高效推理。
|
2月前
|
人工智能 监控 安全
2026年8月1日 AI创业机会日报
《AI创投内参》专注AI商业真相,基于20+权威数据源交叉验证,深度拆解“功能塌缩”、Agent基建、Shadow AI检测等高价值赛道,直击SaaS替代浪潮与垂直AI落地痛点。(239字)
|
3月前
|
人工智能 自然语言处理 安全
别让你的AI当"差不多先生"——Hermes 0.18+0.19双版本连更,把智能体从"会干活"推到了"能托付"
Hermes 0.18–0.19 版本聚焦“可信AI”,六大升级重塑人机协作:/goal 自我验证+持久化兜底确保任务真完成;/learn 技能蒸馏让AI持续积累经验;MoA多模型协商提升决策质量;冷启动提速80%、渲染优化14倍;Smart Approvals智能审批兼顾安全与效率;/journey记忆时间线+上下文压缩保障长期项目连贯性。真正实现“交办即安心”。
390 1
|
3月前
|
运维 监控 小程序
共享物联网设备平台搭建全科普:技术栈选型、云服务器运维与交易支付、合规分账全链路落地
共享充电桩、共享按摩椅、自助售货机、共享棋牌室、共享洗车机等物联网无人设备持续普及。一套商业化共享设备平台,不只是硬件联网与小程序页面开发,还包含完整技术栈规划、云端服务器部署、常态化运维、扫码交易支付体系,以及联营模式下多方收益结算链路。 本文从工程实践角度,系统梳理共享设备平台主流技术栈选型方案、云服务器部署架构与运维要点,完整拆解扫码支付业务流程;重点剖析联营模式下两大行业共性痛点:支付原生接口 30% 分账比例限制、平台归集资金带来的 “二清” 合规隐患,对比不同资金清算建设路径,为共享设备创业者、后端架构师提供可落地的架构参考。
328 0
|
9月前
|
Linux 网络安全
一文读懂NAT:SNAT与DNAT的“庐山真面目”及firewalld实战配置
本文详解NAT核心技——SNAT与DNAT,通过生活类比解析地址转换原理。针对不同系统版本,分别介绍firewalld新旧版配置方法:旧版用Direct接口,新版推荐Policy策略模式,涵盖命令示例与验证方式,助你轻松实现内网共享上网与服务发布。
|
Linux 网络安全 Apache
CentOS 7.2配置Apache服务httpd(上)
CentOS 7.2配置Apache服务httpd(上)
1161 1
|
存储 弹性计算 运维
阿里云服务器全解析:ECS是什么、应用场景、租用流程及优缺点分析
阿里云ECS(Elastic Compute Service)是阿里云提供的高性能、高可用的云计算服务,支持弹性扩展、多样化实例类型和多种计费模式。适用于网站搭建、数据处理、运维测试等多种场景,具备分钟级交付、安全可靠、成本低、易运维等优势,是企业及开发者上云的理想选择。
1360 5
|
存储 API 开发工具
openim如何与现有系统集成
本文介绍如何将OpenIM集成到现有系统以实现聊天功能。通过REST API,您的应用服务器可与IM服务器对接,完成用户注册、信息修改及获取IM Token等操作。客户端集成OpenIM SDK,实现用户登录和聊天功能。OpenIM是开源即时通讯解决方案的领军者,在GitHub上获得超14,000星标。开发文档和GitHub仓库提供详细支持。
1184 1

热门文章

最新文章