Return FileReader 上 reader.result 的字符串值
Return string value of reader.result on FileReader
我一直在尝试 return reader.onloadend 中的一个字符串,但它让我 return 使用我的整个功能。
我的函数如下:
uploadFile() {
let vm = this;
var file = vm.$refs["testeLogo"].files[0];
var reader = new FileReader();
reader.onloadend = function() {
console.log(reader.result); // returns me a string base64
document.querySelector("#supe").setAttribute("src", this.imagem);
return reader.result;
};
reader.readAsDataURL(file);
}
如何以正确的方式 return 字符串的值,因为它保持 returning 我自己的函数而不是打印在 [= 上的 reader.result 21=]
假设您正在开发 Vue 应用程序(如果没有请告诉我):
只需在模板中的任意位置使用 imageBase64
变量,加载文件后它就会更新。
data () {
return {
imageBase64: ''
}
},
methods: {
uploadFile() {
let vm = this;
var file = vm.$refs["testeLogo"].files[0];
var reader = new FileReader();
reader.onloadend = function() {
document.querySelector("#supe").setAttribute("src", this.imagem);
vm.imageBase64 = reader.result
};
reader.readAsDataURL(file);
}
}
另外记得不要直接用Vue查询DOM,可以直接绑定imagem
变量到img
src
属性:
<img :src="imagem" alt="" />
我一直在尝试 return reader.onloadend 中的一个字符串,但它让我 return 使用我的整个功能。
我的函数如下:
uploadFile() {
let vm = this;
var file = vm.$refs["testeLogo"].files[0];
var reader = new FileReader();
reader.onloadend = function() {
console.log(reader.result); // returns me a string base64
document.querySelector("#supe").setAttribute("src", this.imagem);
return reader.result;
};
reader.readAsDataURL(file);
}
如何以正确的方式 return 字符串的值,因为它保持 returning 我自己的函数而不是打印在 [= 上的 reader.result 21=]
假设您正在开发 Vue 应用程序(如果没有请告诉我):
只需在模板中的任意位置使用 imageBase64
变量,加载文件后它就会更新。
data () {
return {
imageBase64: ''
}
},
methods: {
uploadFile() {
let vm = this;
var file = vm.$refs["testeLogo"].files[0];
var reader = new FileReader();
reader.onloadend = function() {
document.querySelector("#supe").setAttribute("src", this.imagem);
vm.imageBase64 = reader.result
};
reader.readAsDataURL(file);
}
}
另外记得不要直接用Vue查询DOM,可以直接绑定imagem
变量到img
src
属性:
<img :src="imagem" alt="" />