• el-table表格中使用render渲染日期组件


    问题描述

    需求是在table中使用日期组件,table是已经封装好的,通过render渲染el-date-picker组件

    问题解决

    • 页面渲染
    // 注意 :column="item" 其中item是tableData的一项
    <template slot-scope="scope">
                <ex-slot v-if="item.render" :render="item.render" :column="item" :row="scope.row" :index="scope.$index" />
                <span v-else v-title>{{ scope.row[item.key] }}</span>
    </template>
    
    • 自定义组件
    var exSlot = {
      functional: true,
      props: {
        row: Object,
        render: Function,
        index: Number,
        column: {
          type: Object,
          default: null
        }
      },
      render: (h, data) => {
        const params = {
          row: data.props.row,
          index: data.props.index
        }
        if (data.props.column) params.column = data.props.column
        return data.props.render(h, params)
      }
    }
    
    • render日期组件
    supportDate(item) {
          item.render = (h, params) => {
            return h('el-date-picker', {
              props: {
                placeholder: '请选择',
                value: params.row[params.column.key],
                'value-format': 'yyyy-MM-dd'
              },
              on: {
                input: val => {
                  // change事件无效,blur事件也不合适,就使用input了
                  this.insideTableData[params.index][params.column.key] = val
                }
              }
            })
          }
          return item
        }
    
  • 相关阅读:
    Android比较实用的属性
    软件版本命名规则
    Dhroid框架笔记(DhNet、Adapter)
    Activity对话框
    Dhroid框架笔记(IOC、EventBus)
    Eclipse快捷键
    解析Excel_Jxl
    面试题
    java基础——值传递和应用传递
    java基础——子类继承父类程序执行顺序
  • 原文地址:https://www.cnblogs.com/codebook/p/14842772.html
Copyright © 2020-2023  润新知