项目实训工作记录

本次工作的主要内容是写医生的诊断页面
这个页面经过分析,医生要显示所有病历的d_id为他的病历,对于这个功能可以想到,我们可以利用vue提供的v-for指令,动态生成不同数量的el-card来显示病历,对于各个病历,再提供一个按钮允许医生进入详情页面进行具体信息的查看,并进行诊断数据的写入。

第一步先准备好Model的部分

<template>
  <div>
    <el-row :gutter="24">
      <el-col :span="12" v-for="(patient, index) in this.patientList" :key="patient.pid">
        <el-card :body-style="{padding: '10px'}">
          <div style="margin: 10px;">
            <span>病人姓名:{{patient.name}}</span><br>
            <span>病情简介:{{patient.chief}}</span><br>
            <span>病人年龄:{{patient.age}}</span><br>
            <el-button type="text"  @click="detail(patient)">查看病人详情 </el-button>
          </div>
        </el-card>
      </el-col>
    </el-row>
  </div>
  <el-dialog
      v-model="dialogVisible"
      title="详情"
      width="90%">
    <el-card>
      <el-form ref="form" :model="form" label-width="80px">
        <el-form-item style="width: 35%" label="病人名:">
          <el-input v-model="form.name" disabled></el-input>
        </el-form-item>
        <td style="width: 480px">
          <el-form-item style="width: 35%" label="病情:">
            <el-input v-model="form.message" disabled></el-input>
          </el-form-item>
        </td>
      </el-form>
    </el-card>

  </el-dialog>
</template>
前面的el-row和el-col用于展示病历,后面的el-dialog用于展示病人的详细信息,并给医生提供撰写诊断结果的途径。

准备js部分

1.需要定义一个getList()函数,在其中向后端发出post请求,并将其返回的数据存放到data中的变量中
2.定义一个detail()函数,用于展示该病例的详细情况,其逻辑为将el-dialog的控制变量的默认false值改为true

<script>
export default {
  name: "Diagnostic",
  data() {
    return {
      patientList: [

      ],
      dialogVisible: false,
      form: {},

    }
  },
  created() {
    this.getList()
  },
  methods: {
    getList() {
      this.$axios.post("http://localhost:8000/medic/diagnostic/1/").then(res => {
        // console.log(res)
        this.patientList = res.data.patientList
      })
      // console.log(this.patientList)
    },
    detail(patient) {
      this.form = patient
      this.dialogVisible = true
    }
  }
}
</script>

查看运行效果

后端获取到两条数据,所以有两个卡片
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值