VUE3给页面添加按钮事件

在Vue 3中,可以通过使用setup函数来添加事件和自定义逻辑。下面是一个示例代码,演示了如何添加页面上的alt+b事件

javascript 复制代码
<template>
  <div>
    <p>Press Alt + B to trigger the event!</p>
  </div>
</template>

<script setup>
import { onMounted } from 'vue'

export default {
    // 在页面挂载后添加事件监听
    onMounted(() => {
      const handleKeyDown = (event) => {
        if (event.altKey && event.key === 'b') {
          // 在这里执行要触发的逻辑
          console.log('Alt + B is pressed!')
        }
      }

      // 添加键盘事件监听
      document.addEventListener('keydown', handleKeyDown)

      // 在组件卸载时移除事件监听
      // 考虑到你想要的是在页面卸载前移除事件监听,因此这里使用了`beforeUnmount`
      // 如果你希望在页面卸载后再移除事件监听,可以使用`onUnmounted`
      beforeUnmount(() => {
        document.removeEventListener('keydown', handleKeyDown)
      })
    })
  }
</script>

在setup函数中,我们使用onMounted钩子函数来添加事件监听。在页面挂载后,会执行handleKeyDown函数来判断是否按下了Alt + B键组合。你可以在handleKeyDown函数中执行你的自定义逻辑。
同时,在组件卸载前,使用beforeUnmount钩子函数来移除事件监听,以防止内存泄漏。

相关推荐
hunterandroid7 分钟前
[Android 从零到一] Compose LazyColumn 性能优化:key、稳定性与重组治理
android·前端
lichenyang45315 分钟前
从一次团队邀请开始:用 React、NestJS 与 Socket.IO 做可靠的实时通知
前端
vtian17 分钟前
一篇文章吃透 Monorepo:pnpm + Turborepo + Changesets 全流程实战(含 8 个踩坑)
前端
默_笙22 分钟前
❗ 点击计数按钮,为什么"峨眉队"也跟着重新渲染?React.memo 说:我记住了
前端·javascript
31535669131 小时前
DeepSeek Harness 发布后,我没急着跑 Demo,先把 `.agents/` 翻了一遍
前端·后端·github
名字还没想好☜1 小时前
Next.js 用 Server Components 直连数据库:去掉 API 层的边界,和三条别踩的安全红线
前端·javascript·数据库·安全·react·next.js
学习zhao极致it1 小时前
2020全新React教程全家桶实战redux+antd+React Hooks前端js视频
前端
用户921080262861 小时前
Bubble 消息操作区改造:复制、重新生成和反馈
前端
LEE1 小时前
AI Agent 都在疯狂加功能,它说:我全砍了
前端·后端
张清悠1 小时前
用 TRAE Work 把 PRD + 设计稿注释,整理成 20 分钟可排期前端任务清单
前端