【发布时间】:2020-08-08 21:20:31
【问题描述】:
我有以下 JSON 数据:
[
{
"amount": 75,
"date": "2020-04-22",
"entradas": [
{
"date": "2020-04-22",
"amount": "100.00",
"title": "test 1"
},
{
"date": "2020-04-22",
"amount": "-25.00",
"title": "test 2"
}
]
},
{
"amount": 10,
"date": "2020-04-30",
"entradas": [
{
"date": "2020-04-30",
"amount": "10.00",
"title": "test 3"
}
]
}
]
我想要实现的是将所有这些“entradas”记录一起呈现,因此在这种情况下,它应该在数据表中呈现 3 行,每个“entradas”对应一个。
我有以下通过axios加载json的基本方法:
methods: {
loadData () {
axios.get('dataapi')
.then(response => this.dataItems = response.data)
},
}
和
data () {
return {
headers: [
{
text: 'Data',
align: 'start',
sortable: false,
value: 'date',
},
{ text: 'Title', value: 'title', sortable: false },
{ text: 'Amount', value: 'amount', sortable: false },
],
dataItems: []
}
},
<template>
<v-app id="testdatatable">
<v-data-table
:headers="headers"
:items="dataItems.entradas"
class="elevation-1"
></v-data-table>
</v-app>
</template>
问题是当我使用:items="dataItems.entradas" 时,它不会渲染任何东西。如果我只使用:items="dataItems" 并且在标题处使用value: 'entradas.title' 之类的东西,也会出现同样的问题
我已经尝试了一些使用 .map 函数的解决方法,因为我似乎有一些类似的例子,但我不知道在这种情况下这有什么帮助......
【问题讨论】:
标签: vue.js vuejs2 datatables vuetify.js