add reader progress
This commit is contained in:
@@ -63,6 +63,8 @@
|
|||||||
<label for="file-input" class="btn btn-primary w-full"><i icon="file-up"></i> Select file</label>
|
<label for="file-input" class="btn btn-primary w-full"><i icon="file-up"></i> Select file</label>
|
||||||
<input @change="onFileChange" id="file-input" type="file" class="hidden" />
|
<input @change="onFileChange" id="file-input" type="file" class="hidden" />
|
||||||
</div>
|
</div>
|
||||||
|
<progress v-if="server.reading || serverIsReady" :value="server.readingProgress" max="100" class="progress"
|
||||||
|
:class="server.readingProgress >= 100 ? 'progress-success' : 'progress-primary'"></progress>
|
||||||
<div ref="qrcode" id="qrcode" :class="serverIsReady ? '' : 'hidden'" class="w-full max-w-64 mx-auto mt-2">
|
<div ref="qrcode" id="qrcode" :class="serverIsReady ? '' : 'hidden'" class="w-full max-w-64 mx-auto mt-2">
|
||||||
</div>
|
</div>
|
||||||
<div v-if="serverIsReady" @click="onShare" class="mt-2 w-full btn btn-primary">
|
<div v-if="serverIsReady" @click="onShare" class="mt-2 w-full btn btn-primary">
|
||||||
|
|||||||
@@ -202,6 +202,7 @@ const app = createApp({
|
|||||||
clients: [],
|
clients: [],
|
||||||
url: null,
|
url: null,
|
||||||
reading: false,
|
reading: false,
|
||||||
|
readingProgress: 0,
|
||||||
data: null,
|
data: null,
|
||||||
copied: false,
|
copied: false,
|
||||||
},
|
},
|
||||||
@@ -722,8 +723,15 @@ const app = createApp({
|
|||||||
onReaderLoad(reader) {
|
onReaderLoad(reader) {
|
||||||
this.server.data = reader.result;
|
this.server.data = reader.result;
|
||||||
this.server.reading = false;
|
this.server.reading = false;
|
||||||
|
this.server.readingProgress = 100;
|
||||||
|
},
|
||||||
|
onReaderProgress(event) {
|
||||||
|
if (event.lengthComputable) {
|
||||||
|
this.server.readingProgress = (100 * event.loaded) / event.total;
|
||||||
|
}
|
||||||
},
|
},
|
||||||
onReaderError() {
|
onReaderError() {
|
||||||
|
this.server.readingProgress = 0;
|
||||||
this.error = "Error reading file";
|
this.error = "Error reading file";
|
||||||
},
|
},
|
||||||
// UI EVENTS
|
// UI EVENTS
|
||||||
@@ -736,6 +744,7 @@ const app = createApp({
|
|||||||
const reader = new FileReader();
|
const reader = new FileReader();
|
||||||
reader.onload = () => this.onReaderLoad(reader);
|
reader.onload = () => this.onReaderLoad(reader);
|
||||||
reader.onerror = this.onReaderError;
|
reader.onerror = this.onReaderError;
|
||||||
|
reader.onprogress = this.onReaderProgress;
|
||||||
reader.readAsArrayBuffer(file);
|
reader.readAsArrayBuffer(file);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user