工作需求iview 组件的使用

加油,新时代打工人!

源码下载地址

<template>
  <div @mouseenter="mousein = true" @mouseleave="mousein = false">
     <el-input type="text" clearable autocomplete="off" v-model="searchDoc.code"  placeholder="请选择" size="small" :style="style"
      @on-focus="handleShowDatatable(true)" @on-blur="handleShowDatatable(false)" @on-change="handleSearchData" />
    <div ref="tableContainer" :style="tableStyle" v-show="showDatatable" >
       <el-table
      :data="searchData"
      style="width:500px;"
      @row-click="handleRowClick">
      <el-table-column
        prop="date"
        label="日期"
        width="180">
      </el-table-column>
      <el-table-column
        prop="name"
        label="姓名"
        width="180">
      </el-table-column>
      <el-table-column
        prop="address"
        label="地址">
      </el-table-column>
       <el-table>
    </div>
  </div>
</template>

<script>

export default {
  name: 'DiseaseCode',
  props: {
    value: {
      type: Object
    },
    width: {
      type: [Number, String]
    },
      index:{
          type: [Number, String]

      },
  },
  data(){
    return {
      loading: false,
      searchDoc: {
        code: '',
        id: 0
      },
      mousein: false,
      showDatatable: false,
      tableStyle: {
        'position':'absolute',
        'background-color':'#FFFFFF',
        'z-index':10,
        'max-height':'200px',
        'overflow-y':'auto',
      },
      searchColumns: [
        {
            title: '编码',
            key: 'code',
            width: 160
        },
        {
            title: '名称',
            key: 'name',
            width: 170
        },
        {
            title: '助记码',
            key: 'mnemonicCodes'
        }
      ],
      searchData: []
    }
  },
  methods: {
    handleSearchData(){ 
      this.loading = true
      axios.request({
        url: '/diseaseCode/selectByCode',
        method: 'get',
        params: {
        code: this.searchDoc.code
        }
      }).then(res => {
          this.searchData = res.data
      }).catch(err => {
        this.$Message.error('请求疾病编码信息时异常: ', err)
      }).finally(() => {
        this.loading = false
      })
    },
      handleRowClick(item){
          this.searchDoc = {
              code: item.code,
              name:item.name,
              mnemonicCodes:item.mnemonicCodes
          }
          let data={
              index:this.index,
              searchDoc:this.searchDoc
          }
          this.$emit('sendcode',data.searchDoc.code)
          this.closeDatatable()
      },
    handleShowDatatable(isShow){
      if(!this.mousein && !isShow){
        this.showDatatable = false
      }else{
        this.showDatatable = true
        if(this.searchData.length == 0){
          this.handleSearchData()
        }
      }
    },
    closeDatatable(){
      this.showDatatable = false
    }
  },
  computed: {
    style(){
      let style = {width: '200px'}
      if(this.width){
        style.width = `${this.width}px`
      }
      return style
    }
  },
  watch: {
    searchDoc: function(val){
      if(!val.code){
        this.searchDoc.id = 0
      }
      this.$emit('input', this.searchDoc)
    }
  },
  mounted(){
  }
  
}
</script>

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-21 18:00:03       91 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-21 18:00:03       97 阅读
  3. 在Django里面运行非项目文件

    2024-03-21 18:00:03       78 阅读
  4. Python语言-面向对象

    2024-03-21 18:00:03       88 阅读

热门阅读

  1. Milvus笔记

    2024-03-21 18:00:03       36 阅读
  2. Web入门

    Web入门

    2024-03-21 18:00:03      37 阅读
  3. docker+k8s相关面试题

    2024-03-21 18:00:03       31 阅读
  4. 循环语句中var与let声明循环变量的区别

    2024-03-21 18:00:03       40 阅读
  5. 防抖节流插件throttle-debounce

    2024-03-21 18:00:03       45 阅读
  6. C++面试100问(十一)

    2024-03-21 18:00:03       40 阅读
  7. 【蓝桥杯】链式前向星

    2024-03-21 18:00:03       48 阅读
  8. python列表的创建、访问、切片和方法

    2024-03-21 18:00:03       47 阅读
  9. MySQL 管理用户授权 DCL

    2024-03-21 18:00:03       44 阅读
  10. PyTorch Dataset、DataLoader长度

    2024-03-21 18:00:03       42 阅读
  11. tornado上传文件

    2024-03-21 18:00:03       40 阅读
  12. 快速幂(技巧版)+ 一点点数学推理

    2024-03-21 18:00:03       41 阅读