我有一個陣列data():
data() {
return {
list: [],
}
},
methods: {
pushData() {
this.list.push({name:'yorn', age: 20});
}
}
現在我想推送到以下格式的“串列”陣列,關鍵是info:
list [
info [
{
name:yorn,
age: 20
}
]
]
我是 vuejs 和 javascript 的新手,所以我需要大家的幫助。請給我你的意見。謝謝
uj5u.com熱心網友回復:
嘗試將pushData方法更改為具有data引數
pushData(data) {
this.list.push(data);
}
呼叫方法
this.pushData({name: "john", age: 25});
uj5u.com熱心網友回復:
據我了解,您正在嘗試創建一個嵌套陣列。但是,在陣列中,您不使用鍵,而是使用索引。您正在尋找的東西稱為關聯陣列。
選項 a:使用“普通”陣列的索引
list = [{name: 'abc', age: 10},{name: 'def', age: 20}]
這樣,您可以通過使用索引來使用陣列中的資料:
list[0] == {name: 'abc', age: 10}
list[1] == {name: 'def', age: 20}
選項 b:使用關聯陣列
list = { info1: {name: 'abc', age: 10}, info2: {name: 'def', age: 20}}
這樣您就可以使用鍵而不是索引。對于關聯陣列,您只需要不同的括號。
希望這會有所幫助。:-)
uj5u.com熱心網友回復:
我想推送到以下格式的'list'陣列,關鍵是
info名單:[資訊:[{姓名:yorn,年齡:20}]]
上述預期結果無效JSON。它應該如下所示:
list: [{
info: [{
name: yorn,
age: 20
}]
}]
作業演示:
new Vue({
el: '#app',
data: {
list: []
},
mounted() {
this.pushData();
},
methods: {
pushData() {
this.list.push({info : [{name:'yorn', age: 20}] });
// Or you can also use below one.
// this.list[0].info.push({name:'yorn', age: 20});
}
}
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="app">
<div v-for="(obj, index) in list" :key="index">
<p v-for="(item, i) in obj.info" :key="i">{{ item.name }} </p>
</div>
</div>
uj5u.com熱心網友回復:
您可以像下面這樣簡單地使用
pushData() {
let data = { info : [{name:'yorn', age: 20}] }
this.list.push(data);
}
希望這會有所幫助。:-)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/442217.html
標籤:javascript Vue.js p
