【问题标题】:Submit Javascript Object with Array of Object inside to the API向 API 提交带有对象数组的 Javascript 对象
【发布时间】:2019-03-19 10:41:58
【问题描述】:

大家好,

我需要有关如何提交包含对象数组的对象的帮助,并且对象数组应该来自我制作的复选框。

这是我的示例复选框

<input type="checkbox" name="user.preferences" value="Hard" />
<input type="checkbox" name="user.preferences" value="Soft" />
<input type="checkbox" name="user.preferences" value="Small" />

我的数据 javascript 如下所示:

user:{ 
    preferences: [] 
}

当我使用JSON.stringify 提醒user 时,我可以看到类似这样的结果。

{"preferences": ["Soft","Small"]}

但问题是,我使用的 api 需要这样的格式:

{
    "preferences": [
     {
         "preference": "Hard"
     },
     {
         "preference": "Soft"
     },
     // so on and so forth
    ]
}

请有人帮助我。谢谢

【问题讨论】:

  • 您是在处理这些数据还是直接通过表单发送?
  • 您的 HTML 中不应有重复的 id 属性值

标签: javascript arrays json object axios


【解决方案1】:

您应该将.map 中的每个字符串preferences 指向一个以preference 作为其键/值的对象:

const user = {
  "preferences": ["Soft", "Small"]
};
user.preferences = user.preferences
  .map(preference => ({ preference }));
console.log(user);

【讨论】:

  • 但我的另一个问题是,我该如何扭转它?从 api 到我的 javascript?
  • 反其道而行之:.map({ preference }) =&gt; preference)
猜你喜欢
  • 1970-01-01
  • 2017-06-28
  • 2017-06-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-06
  • 1970-01-01
  • 2018-12-22
相关资源
最近更新 更多