我正在尝试将上传的图像转换为base64字符串并发送到API。我使用的是React式表单。问题是,当将base64字符串结果修补到FormGroup图像属性时,我一直出错。下面是代码:
onFileChange(event) {
let reader = new FileReader();
if(event.target.files && event.target.files.length) {
const [file] = event.target.files;
reader.readAsDataURL(file);
reader.onload = () => {
this.formGroup.patchValue({
file: reader.result as string
});
};
}
}
我一直试图将值修补到表单组,这个错误:
错误DOMException:试图使用不可用或不再可用的对象
1条答案
按热度按时间7rtdyuoh1#
将onload方法设置为async并删除'as string':
如果由于某种原因失败了,在使用它之前将reader.result值分配给一个var:
另外,请确保在修补值后执行
this.formGroup.updateValueAndValidity()
。