Vue.js 将图像上载到firebase存储后设置Vuetify循环进度条值
我试图在Firebase商店图像上传成功后显示进度条。我可以上传图像,但无法将响应状态与进度条同步。 这是我正在尝试的代码片段,请您指出错误。谢谢Vue.js 将图像上载到firebase存储后设置Vuetify循环进度条值,vue.js,Vue.js,我试图在Firebase商店图像上传成功后显示进度条。我可以上传图像,但无法将响应状态与进度条同步。 这是我正在尝试的代码片段,请您指出错误。谢谢 <template> <v-progress-circular :rotate="360" :size="100" :width="15" :value="value" color="teal" > {{ value }} </v-progre
<template>
<v-progress-circular
:rotate="360"
:size="100"
:width="15"
:value="value"
color="teal"
>
{{ value }}
</v-progress-circular>
</template>
export default {
data: () => ({
interval: {},
value: 0,
percent: 0,
}
我使用Vue的Emit Bus功能解决了这个问题
uploadTask.on(
"state_changed",
function(snapshot) {
this.percent = snapshot.bytesTransferred / snapshot.totalBytes * 100;
this.percent = Number(this.percent.toFixed(3).slice(0, -1));
EventBus.$emit("upload-progress", this.percent);
console.log("Upload is " + this.percent + "% done");
},
function error(err) {},
function complete() {
console.log("Upload finished!!!!");
}
);
},
及
假设缺少的右括号是打字错误,并且使用当前代码,则问题可能出在
uploadTask.on
函数中。请您在函数或整个JS/script部分添加更多详细信息/代码好吗?您的代码笔示例也是空的。
uploadTask.on(
"state_changed",
function(snapshot) {
this.percent = snapshot.bytesTransferred / snapshot.totalBytes * 100;
this.percent = Number(this.percent.toFixed(3).slice(0, -1));
EventBus.$emit("upload-progress", this.percent);
console.log("Upload is " + this.percent + "% done");
},
function error(err) {},
function complete() {
console.log("Upload finished!!!!");
}
);
},
mounted() {
this.$validator.localize("en", this.dictionary);
this.interval = setInterval(() => {
if (this.value === 100) {
return (this.value = 100);
}
EventBus.$on("upload-progress", percent => {
this.value = percent;
});
}, 1000);
},