如何在 Strapi 中使用 PUT API 请求更新数组

问题描述 投票:0回答:2

我想通过 PUT 请求更新产品“表”中的数组。 可以说用户数组(产品有很多用户)

本地主机:1337/api/产品/2

我正在正文中发送数据

{
  "data": {
    "users": [4,6,8] //i want to push here next user but in json it is impossible [...users, newUser]
  }
}

问题是,当我使用 put 时,数组中以前的值会丢失,因为这就是 PUT 的工作原理。

为什么我需要它?我使用 Strapi 并且通过数组建立关系。我只需要更新数组。但我不知道该怎么做。

也许我应该使用 redux 并将值推送到存储中的数组,然后更新??

reactjs rest strapi
2个回答
1
投票

您可以使用扩展运算符更新您的值。

a = {
  "data": {
    "users": [4,6,8]
  }
}

UpdatedValues = {
    ...a, data: {
        ...a.data, users:
            [...a.data.users, 'newValues']
    }
}
console.log(UpdatedValues);

您可以事先更新数组并将其作为值发送到您的 API 请求。

oldArray = [1, 2, 3];
newArray = [...oldArray, "newValue"];

requestPayload = {
  data: {
    users: newArray,
  },
};

console.log(requestPayload)


0
投票

您将在这里找到问题的解决方案

https://docs.strapi.io/dev-docs/api/rest/relations

© www.soinside.com 2019 - 2024. All rights reserved.