类型为"Blob"的参数不可分配给类型为"字符串 |斑点'



刚刚出现错误:

Argument of type 'Blob' is not assignable to parameter of type 'string | Blob'.
Type 'import("buffer").Blob' is not assignable to type 'Blob'.
The types returned by 'stream()' are incompatible between these types.
Type '{}' is missing the following properties from type 'ReadableStream<any>': locked, cancel, getReader, pipeThrough, and 2 more.

不明白发生了什么。试图重新启动vscode,但没有帮助。Blob不能赋值给Blob类型的参数。? !所以流返回的Blob与通常的Blob不一样?

这是我的代码

const audioBuffer = fs.readFileSync(`./uploads/audio/${filePath}`)
const audioBlob = new Blob([audioBuffer])
const formData = new FormData()
formData.append('file', audioBlob)

当我试图将文件附加到formdata

时显示错误

您正在使用两种不同的类型Blob

您要导入的文件来自node:

import { Blob } from 'buffer' // this is from node

虽然您正在调用的api (FormData)来自DOM,并期望在DOM类型中定义的Blob类型。这两种Blob类型不相同

解决方法是为Blob删除import。这应该使用DOM类型中定义的全局Blob类型(前提是您已经明确地从项目中排除了DOM类型)

相关内容

最新更新