как вывести sh элементов в массиве объектов из API в новый массив vue. js - PullRequest
1 голос
/ 02 апреля 2020

Я хочу добавить sh первые 6 элементов из массива объектов в мой только что созданный массив. Я получаю это на веб-браузере, но вместо этого или "qwe" "qweqweqwe" я получаю NaN. Почему?

Допустим, массив объектов API выглядит следующим образом:

0: {id: 340, name: "qwe", lastname: "qweqweqweq", …}
1: {id: 341, name: "qwe", lastname: "qweqweqweq", …}
2: {id: 342, name: "qwe", lastname: "qweqweqweq", …}
3: {id: 343, name: "qwe", lastname: "qweqweqweq", …}
4: {id: 344, name: "qwe", lastname: "qweqweqweq", …}
5: {id: 345, name: "qwe", lastname: "qweqweqweq", …}
6: {id: 346, name: "qwe", lastname: "qweqweqweq", …}
7: {id: 347, name: "qwe", lastname: "qweqweqweq", …}
8: {id: 348, name: "qwe", lastname: "qweqweqweq", …}

и мой код выглядит так:

.then(response => {
                console.log(typeof response.data, response.data);
                this.model = {
                    name: response.data.name,
                    lastname: response.data.lastname
                }
                this.userInfo.unshift(this.model.name + this.model.lastname); // Here's where i have problem
                if(this.userInfo.length > 6)
                    this.userInfo.pop();
            })
            .catch(error => {
                console.log('Something went wrong', error);
            });
        },

Ответы [ 3 ]

0 голосов
/ 02 апреля 2020

Это наиболее вероятно, потому что response.data не содержит полей name и lastname, так как undefined + undefined приведет к NaN.

0 голосов
/ 02 апреля 2020

Если вы просто хотите переместить первые шесть записей объектов массива, то вы можете использовать этот метод

let newArray = response.data.slice(0, 6); // the newArray will have the first six objects of the response data.
0 голосов
/ 02 апреля 2020

Если я вас понял, вы хотите набрать sh первые 6 элементов от response до userInfo.

Если это то, что вы хотите, вы можете попробовать вот так:

.then(response => {
    response.data.some((e, index) => {
          this.userInfo.push(e.name + e.lastname)
          return index > 5
    })
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...