diff --git a/src/components/QrCodeUploadDialog.vue b/src/components/QrCodeUploadDialog.vue index fb3f89e4..6fba5464 100644 --- a/src/components/QrCodeUploadDialog.vue +++ b/src/components/QrCodeUploadDialog.vue @@ -32,12 +32,14 @@ const file = defineModel('file', { }); const reader = new FileReader(); -const inputFile = (() => { +const { inputFile, resetInputFile } = (() => { + const _form = document.createElement('form'); const _element = document.createElement('input'); _element.type = 'file'; _element.accept = 'image/*'; _element.addEventListener('change', change); - return _element; + _form.appendChild(_element); + return { inputFile: _element, resetInputFile: () => _form.reset() }; })(); reader.addEventListener('load', () => { @@ -48,7 +50,7 @@ reader.addEventListener('load', () => { }); function browse() { - inputFile.files = null; + resetInputFile(); inputFile?.click(); } @@ -114,7 +116,7 @@ async function downloadImage(url: string) { unelevated round v-if="!changeDisabled" - @click="inputFile?.click()" + @click="browse" style="color: hsla(var(--stone-0-hsl) / 0.7)" >