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钩子函数来移除事件监听,以防止内存泄漏。

相关推荐
颜进强8 分钟前
23 · NestJs ModuleRef 模块引用:容器递给你的"取货窗口",四个 API 四种语义
前端·后端·ai编程
码林鼠17 分钟前
dart语言教学
前端
光影少年17 分钟前
如果 React 组件的属性没有传值,它的默认值是什么?
前端·javascript·react.js
风骏时光牛马42 分钟前
AI_Coding:智能代码生成与工程实践
前端
颜进强1 小时前
22 · NestJs InjectionScopes 注入作用域:默认单例不是偷懒,是最优——以及何时才该打破
前端·后端·ai编程
liangshanbo12151 小时前
Web Worker 在 AI 前端应用中有什么具体使用场景?
前端·人工智能
Q26433650231 小时前
【有源码】基于Spring Boot和Vue的在线考试与交流系统-教育信息化背景下在线考试与交流一体化平台
java·vue.js·spring boot·mysql·spring·毕业设计·课程设计
拖孩1 小时前
一个全程 AI 写的小程序「厨菜记」,上线 20 天跑通流量主,收入几块钱,开心得不行
前端·后端·微信小程序
颜进强1 小时前
21 · NestJs AsyncProviders 异步提供者:useFactory 返回 Promise 之后,容器发生了什么
前端·后端·ai编程
莪_幻尘2 小时前
Agent 体检:乱编、连锁、失忆,给 Agent 做一次五维体检
前端·人工智能·agent