{ "code": 200, "msg": null, "data": { "list": [ { "id": 64, "createTime": "2023-07-07T13:43:52.163+00:00", "orderState": 0, "createBy": "admin", "patientId": 1, "boxId": 1, "orderAddress": "101-1" } ], "total": 0 } }怎么用vue把上面这个接口数据和下面这个接口数据都整合到一个表格patientData里展示出来,根据上面接口中的patientId获取下面接口对应内容,将上下接口中对应的数据放在表格一行上{ "code": 200, "msg": null, "data": { "list": [ { "id": 1, "patientName": "shj", "patientCondition": "感冒", "patientAddress": "101-1" }, { "id": 2, "patientName": "zxl", "patientCondition": "发烧", "patientAddress": "101-2" }, { "id": 3, "patientName": "zyh", "patientCondition": "骨折", "patientAddress": "102-1" }, { "id": 4, "patientName": "xr", "patientCondition": "咳嗽", "patientAddress": "103-1" } ], "total": 0 } }
时间: 2023-07-21 07:04:55 浏览: 105
vue-antd-admin:vue-antd-admin基于vue-cli4 + vuex + ant-design-vue开发的后台管理系统,包括权限管理,布局方式,国际化,动态路由和后台管理系统常用的表格和表单等功能,包含echarts图的各种展示,第一版已完成,有兴趣可以了解下
你可以使用Vue的Axios库来发送HTTP请求获取接口数据,并使用v-for指令在表格中循环渲染数据。首先,你需要在Vue组件中的data中定义一个空的数组patientData来存储整合后的数据。
然后,你可以在created钩子函数中发送两个接口请求,并使用Promise.all方法等待两个请求都完成后进行处理。在处理数据时,你可以使用map方法遍历上面接口的数据,根据patientId查找下面接口中对应的内容并将它们整合到一个对象中。将这个对象添加到patientData数组中。
最后,在模板中使用v-for指令循环渲染patientData数组中的数据,并将对应字段显示在表格中的每一行。
以下是一个简单的示例代码:
```vue
<template>
<div>
<table>
<thead>
<tr>
<th>ID</th>
<th>Patient Name</th>
<th>Patient Condition</th>
<th>Patient Address</th>
</tr>
</thead>
<tbody>
<tr v-for="item in patientData" :key="item.id">
<td>{{ item.id }}</td>
<td>{{ item.patientName }}</td>
<td>{{ item.patientCondition }}</td>
<td>{{ item.patientAddress }}</td>
</tr>
</tbody>
</table>
</div>
</template>
<script>
import axios from 'axios';
export default {
data() {
return {
patientData: [],
};
},
created() {
const apiUrl1 = 'your-first-api-url';
const apiUrl2 = 'your-second-api-url';
Promise.all([axios.get(apiUrl1), axios.get(apiUrl2)])
.then(([response1, response2]) => {
const data1 = response1.data.data.list;
const data2 = response2.data.data.list;
this.patientData = data1.map((item1) => {
const item2 = data2.find((item2) => item2.id === item1.patientId);
return {
id: item1.id,
patientName: item2.patientName,
patientCondition: item2.patientCondition,
patientAddress: item1.orderAddress,
};
});
})
.catch((error) => {
console.error(error);
});
},
};
</script>
```
请注意,你需要将'your-first-api-url'和'your-second-api-url'替换为实际的接口URL。同时,你还需要根据实际情况调整接口数据的字段名和表格中的列名。这只是一个简单的示例,你可能需要根据你的实际需求进行适当的调整。
阅读全文