close on escape

This commit is contained in:
grimhilt 2023-04-11 19:15:35 +02:00
parent 9842ebeb12
commit 1ab74d67ca

View File

@ -1,14 +1,25 @@
<script setup>
import { vOnClickOutside } from "@vueuse/components";
import { defineEmits, defineProps } from "vue";
import { defineEmits, defineProps, onMounted, onUnmounted } from "vue";
const emit = defineEmits(["close-modal"]);
const props = defineProps({ title: String });
// todo close on escape
function close() {
emit("close-modal");
}
function keyUpHandler(e) {
if (e.key == "Escape") close();
}
onMounted(() => {
window.addEventListener("keyup", keyUpHandler);
});
onUnmounted(() => {
window.removeEventListener("keyup", keyUpHandler);
});
</script>
<template>