TypeError: Constructor ArrayBuffer requires 'new'
时间: 2024-01-02 18:02:27 浏览: 34
抱歉,我之前给出的代码有误。在使用 `ArrayBuffer` 构造函数时,确实需要使用 `new` 关键字进行实例化。以下是修正后的代码示例:
```javascript
import axios from 'axios';
export default {
methods: {
async getFileArrayBuffer(filePath) {
try {
const response = await axios.get(filePath, {
responseType: 'arraybuffer'
});
const arrayBuffer = new ArrayBuffer(response.data.byteLength);
const view = new Uint8Array(arrayBuffer);
view.set(new Uint8Array(response.data));
return arrayBuffer;
} catch (error) {
console.error(error);
// 处理错误
}
}
}
};
```
在上述代码中,我们首先使用 `axios` 库发起 GET 请求,并将 `responseType` 设置为 `'arraybuffer'`。然后,我们通过实例化 `ArrayBuffer` 对象并使用 `Uint8Array` 将从请求中获取的数据复制到 `ArrayBuffer` 中。
现在,你可以在需要的地方调用 `getFileArrayBuffer` 方法来获取文件的 `ArrayBuffer` 数据:
```javascript
const fileArrayBuffer = await this.getFileArrayBuffer('/api/files/my-file.pdf');
```
请确保将 `'/api/files/my-file.pdf'` 替换为实际文件的路径。使用这种方式,你就可以根据文件路径在 Vue 3 和 Quasar 中将文件转换为 `ArrayBuffer`。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)