typescript 上传文件 formData声明的类型

发布于 2022-09-12 22:44:25 字数 693 浏览 15 评论 0

const formData:any = new FormData();
const data = {
    name: 'admin',
    age: 18
}
for (const [key, value] of Object.entries(data)) {
    formData.append(key, value)
}
const fileList = this.fileList
if (fileList && fileList.length > 0) {
    for (const item of this.fileList) {
      formData.append('file', item.file)
    }
}

image.png

报错了

Argument of type 'string | LocationQueryValue[] | null' is not assignable to parameter of type 'string | Blob'.

请问怎么声明这个formData的类型?用any倒是也可以,但是既然用了typescript 就想知道怎么写

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

梦回梦里 2022-09-19 22:44:25
const formData:any = new FormData();
const data = {
    name: 'admin',
    age: 18
}
for (const [key, value] of Object.entries(data)) {
    formData.append(key, value)
}
const fileList = this.fileList
if (fileList && fileList.length > 0) {
    for (const item of this.fileList) {
      formData.append('file', item.file as Blob)
    }
}

增加一个断言, item.file一定是Blob类型就行了

等待我真够勒 2022-09-19 22:44:25

错误提示是说,你的value的类型不对。
value的类型应当是string或者Blob类型,而你的value可能是LocationQueryValue[]类型

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文