|
@@ -119,12 +119,16 @@
|
|
onMount(() => {
|
|
onMount(() => {
|
|
const dropZone = document.querySelector('body');
|
|
const dropZone = document.querySelector('body');
|
|
|
|
|
|
- dropZone?.addEventListener('dragover', (e) => {
|
|
|
|
|
|
+ const onDragOver = (e) => {
|
|
e.preventDefault();
|
|
e.preventDefault();
|
|
dragged = true;
|
|
dragged = true;
|
|
- });
|
|
|
|
|
|
+ };
|
|
|
|
+
|
|
|
|
+ const onDragLeave = () => {
|
|
|
|
+ dragged = false;
|
|
|
|
+ };
|
|
|
|
|
|
- dropZone.addEventListener('drop', async (e) => {
|
|
|
|
|
|
+ const onDrop = async (e) => {
|
|
e.preventDefault();
|
|
e.preventDefault();
|
|
console.log(e);
|
|
console.log(e);
|
|
|
|
|
|
@@ -158,11 +162,17 @@
|
|
}
|
|
}
|
|
|
|
|
|
dragged = false;
|
|
dragged = false;
|
|
- });
|
|
|
|
|
|
+ };
|
|
|
|
|
|
- dropZone?.addEventListener('dragleave', () => {
|
|
|
|
- dragged = false;
|
|
|
|
- });
|
|
|
|
|
|
+ dropZone?.addEventListener('dragover', onDragOver);
|
|
|
|
+ dropZone?.addEventListener('drop', onDrop);
|
|
|
|
+ dropZone?.addEventListener('dragleave', onDragLeave);
|
|
|
|
+
|
|
|
|
+ return () => {
|
|
|
|
+ dropZone?.removeEventListener('dragover', onDragOver);
|
|
|
|
+ dropZone?.removeEventListener('drop', onDrop);
|
|
|
|
+ dropZone?.removeEventListener('dragleave', onDragLeave);
|
|
|
|
+ };
|
|
});
|
|
});
|
|
</script>
|
|
</script>
|
|
|
|
|