【发布时间】:2021-07-16 12:16:40
【问题描述】:
我想在我的数据表中显示 axios 数据,因为它们有一个动态键我想创建一个模板
数据集:
"environment": "production", "version": "5.6", "apache_version": "3.2.1"
我的 Vue.js:
new Vue({
el: "#info",
mounted() {
this.getInfo()
},
methods: {
getInfo() {
axios
.get("http://localhost:8080/info")
.then(response => {
this.info = response.data
})
},
},
data: {
selectedRow: [],
columns: ['name','value'],
rows : [],
options: {
headings: {
name: 'Info',
value: 'Value'
},
sortable: ['name','value'],
filterByColumn: true,
},
},
});
我的 HTML:
<div id="info" v-cloack>
<v-client-table :data="rows" :columns="columns" :options="options">
<template slot="name" scope="props">
<div v-for="(value, name) in info">
<p>{{ props.rows.name }}</p>
</div>
</template>
<template slot="value" scope="props">
<div v-for="(value, name) in info">
<p>{{ props.rows.value }}</p>
</div>
</template>
</v-client-table>
</div>
为了在名称栏中显示:环境、版本、apache_version
并在值列显示:生产、5.6、3.2.1
谢谢!
【问题讨论】:
-
能不能配合一下,到底是什么问题,有什么错误,怎么回事?
-
我的回复中有我的数据,但是当我想在表格中打印时写的是“无匹配记录”
-
是的,你能给我们看一个数据样本吗,你没有在任何地方设置列
-
它是数据的一部分:
{ "environment": "production", "version": "5.6", "apache_version": "3.2.1", "apt_dist_updates": 328, "apt_has_dist_updates": false, "apt_has_updates": true }键总是不同的,所以我对列的声明有疑问 -
您可以创建一个计算属性,该属性循环您的数据并通过循环您对象中每个属性的键和值来返回列。我会为您编写它,但要确定您需要列的正确格式,这取决于您拥有的组件以及它如何获取数据。如果你有一个不同的简单工作示例,我可能会提供帮助
标签: vue.js templates axios vue-tables-2