【发布时间】:2018-05-25 22:05:48
【问题描述】:
我想向产品和用户上传图片。所以我将图像转换为base64字符串并发送它。但是,当所选图像很大时,由于base64字符串太大,图像不会上传。
代码如下:
HTML
<input type="file" (change)="onFileSelected($event)">
<button type="submit" title="upload" (click)="uploadImage()"></button>
TS 文件
onFileSelected(event){
var files = event.target.files;
var file = files[0];
if (files && file) {
var reader = new FileReader();
reader.onload =this._handleReaderLoaded.bind(this);
reader.readAsBinaryString(file);
}
}
_handleReaderLoaded(readerEvt) {
var binaryString = readerEvt.target.result;
this.base64textString= btoa(binaryString);
console.log(btoa(binaryString));
}
我只是接受选择的图像。那么,有没有办法在选择后压缩图像或减少base64字符串以便上传图像。 谢谢!!提前。
【问题讨论】:
标签: html angular image typescript base64