你上面的代码报错,Failed to execute 'readAsArrayBuffer' on 'FileReader': parameter 1 is not of type 'Blob'.
时间: 2023-07-11 13:12:51 浏览: 656
解决 github项目clone报错 Failed connect to github.com:443; 解决
5星 · 资源好评率100%
非常抱歉,我的回答中出现了错误。应该使用 `readAsArrayBuffer` 方法来读取文件内容并生成 `Blob` 对象。
以下是正确的代码:
```javascript
// 获取文件对象
const file = input.files[0];
// 使用 FileReader 对象读取文件内容,得到 Blob 对象
const reader = new FileReader();
reader.readAsArrayBuffer(file);
reader.onload = () => {
const blob = new Blob([reader.result], { type: file.type });
console.log(blob);
};
```
在这个代码片段中,我们使用 `readAsArrayBuffer` 方法读取文件内容,得到的结果是一个 `ArrayBuffer` 对象,然后使用 `Blob` 构造函数创建一个 `Blob` 对象,其中第一个参数是包含文件内容的 `ArrayBuffer` 对象,第二个参数是文件的 MIME 类型。
非常感谢您的指正,我会在以后的回答中更加仔细地审查代码。
阅读全文