| 123456789101112131415161718 |
- import { Directive, onUnmounted, DirectiveBinding } from 'vue'
- export const keyboard: Directive = {
- mounted (el, binding: DirectiveBinding) {
- const handleKeyPress = (event) => {
- if (event.key === 'Enter') {
- binding.value() // 执行绑定的方法
- }
- }
- el.addEventListener('keypress', handleKeyPress)
- // 在组件卸载时移除事件监听器
- onUnmounted(() => {
- el.removeEventListener('keypress', handleKeyPress)
- })
- }
- }
|