[英]how to push elements in array of objects from api to new array vue.js
我想將對象數組中的前 6 個元素推送到我新制作的數組中。 我在網絡瀏覽器上得到它,但我得到了 NaN,而不是“qwe”“qweqweqwe”。 為什么?
假設來自 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);
});
},
如果我理解您,您想將response
的前 6 個元素推送到userInfo
。
如果這是你想要的,你可以這樣嘗試:
.then(response => {
response.data.some((e, index) => {
this.userInfo.push(e.name + e.lastname)
return index > 5
})
})
這很可能是因為response.data
不包含字段name
和lastname
作為undefined + undefined
將導致NaN
。
如果您只想移動數組對象的前六個條目,則可以使用此方法
let newArray = response.data.slice(0, 6); // the newArray will have the first six objects of the response data.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.