【问题标题】:How to append boolean type values in formdata?如何在表单数据中附加布尔类型值?
【发布时间】:2019-02-07 07:07:13
【问题描述】:

这里我有this.state.word is boolean type,所以值在true/false

但是当我想尝试附加 this.state.word 时,它会给我这样的错误 argument type boolean is not assignable to parameter type string | blob

那么如何在表单数据中附加布尔类型值(真/假)(注意:-我想以布尔类型而不是字符串形式发送)?

handleSendSynopsis() {
  const data = new FormData();
  data.append('word', this.state.word);
}

【问题讨论】:

  • 尝试将其转换为这样的字符串:String(this.state.word)
  • @VaibhavVishal 我想发送布尔类型而不是字符串
  • 但它想要一个字符串。
  • 这能回答你的问题吗? FormData sends boolean as string to server

标签: javascript reactjs boolean form-data


【解决方案1】:

在客户端使用 JSON.stringify 发送数字和布尔值,然后在后端进行解析

举例

const form = new FormData;
const data = {
    name: 'john doe',
    active: true,
    count: 42
};

form .append('file', file); // send your file here
form .append('fileProps', JSON.stringify(data));

【讨论】:

  • 不能从这里发送布尔值
  • 是的,formdata不支持数据类型:boolean、integer,需要以字符串形式发送
  • @Akki,如果有帮助,请接受答案
  • 是的,form .append('fileProps', JSON.stringify(data)) 正在工作
【解决方案2】:

根据FormData DocumentationFormData.append 只接受USVStringBlob。 S 您必须将数据转换为字符串,然后稍后在后端对其进行解析。您可以使用JSON.stringify 将您的表单对象转换为字符串。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-08
    • 2015-08-25
    • 2022-01-18
    • 2017-01-30
    • 2016-04-08
    • 2018-04-09
    • 1970-01-01
    • 2011-06-13
    相关资源
    最近更新 更多