我正在尝试根据从Ionic的相机插件获得的一些base64数据创建文件。我正在使用从另一个stackoverflow的答案中获得的功能。问题在于创建的文件的大小为:0,并且name属性似乎是我在创建时传递的Uint8array。
这是转换Base64数据的功能:(前两行带有注释,因为数据的开头没有“ data:image / jpeg; base64”)
_dataURLtoFile(dataurl, filename) {
let //arr = dataurl.split(','),
//mime = arr[0].match(/:(.*?);/)[1],
bstr = atob(dataurl),
n = bstr.length,
u8arr = new Uint8Array(n);
while(n--){
u8arr[n] = bstr.charCodeAt(n);
}
return new File([u8arr], filename, {type:'image/jpeg'});
}
这是我在控制台中得到的:
File {name: Array(1), localURL: "archivo", type: {…}, lastModified: null, lastModifiedDate: null, …}
end: 0
lastModified: null
lastModifiedDate: null
localURL: "archivo"
name: [Uint8Array(268175)]
size: 0
start: 0
type: {type: "image/jpeg"}
__proto__: Object
相关分类