gpt4 book ai didi

Angular 转换文件输入到base64

转载 作者:行者123 更新时间:2023-12-02 08:08:24 24 4
gpt4 key购买 nike

我正在尝试在我的 Angular 项目中解析输入到base64的文件。

在我的模板中,我有:

<input type="file" (change)="handleUpload($event)">

然后我的功能是这样的:
handleUpload(event) {
const file = event.target.files[0];
const reader = new FileReader();
reader.readAsDataURL(event);
reader.onload = () => {
console.log(reader.result);
};
}

这给了我这个错误:
ERROR TypeError: Failed to execute 'readAsDataURL' on 'FileReader': parameter 1 is not of type 'Blob'.
at _global.(anonymous function).(anonymous function) [as readAsDataURL] (webpack-internal:///./node_modules/zone.js/dist/zone.js:1323:60)
at AccountFormComponent.handleUpload (account-form.component.ts:212)
at Object.eval [as handleEvent] (AccountFormComponent.html:344)
at handleEvent (core.js:13547)
at callWithDebugContext (core.js:15056)
at Object.debugHandleEvent [as handleEvent] (core.js:14643)
at dispatchEvent (core.js:9962)
at eval (core.js:10587)
at HTMLInputElement.eval (platform-browser.js:2628)
at ZoneDelegate.invokeTask (zone.js:421)

最佳答案

您将事件传递给方法而不是文件。
您的方法应如下所示:

handleUpload(event) {
const file = event.target.files[0];
const reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = () => {
console.log(reader.result);
};
}

关于 Angular 转换文件输入到base64,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49350670/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com