0

我是 Vue js 的新手,当我使用 vue-multiselect 时,我在数组对象中有数据,如下所示。

    [
        {
            "id": 1,
            "add_on_type": "Xtra",
            "name": "test",
            "price": 12,
            "created_at": "2020-06-25 10:12:43",
            "updated_at": "2020-06-25 10:12:43"
        },
        {
            "id": 3,
            "add_on_type": "Xtra",
            "name": "Some x",
            "price": 120,
            "created_at": "2020-06-30 05:47:52",
            "updated_at": "2020-06-30 05:47:52"
        }
    ]

但在我的功能中,我需要key:value像下面这样访问

"xtra": {
  // key: value
  0: 1
  1: 3
}

但我得到所有数组对象而不是id唯一。我需要得到ID唯一的数组,下面是我的代码。我不知道如何仅id通过array使用以下代码获得。

this.$axios
      .get("items/" + this.item)
      .then(res => {
        // below line is how I get the array object, but I need only id in array.
        data.xtra = this.extra;
        console.log(data);
      })
      .catch(err => {
        throw err;
      });

这对某些人来说可能很容易,但我找不到办法。任何帮助,将不胜感激。提前致谢

4

2 回答 2

0

如果我理解正确你的问题,this.item就是持有从数组中检索到的对象。如果是这样,它应该像这样简单:

  .get("items/" + this.item.id)
于 2020-06-30T09:31:33.287 回答
0

如果您想创建新数组,您可以在从 axios 返回时执行此操作

.then(res => {
  let arr = res.data
  this.xtra = arr.map(x =>
  x.item.id)

 })
于 2020-06-30T09:36:38.203 回答