jeecg-boot JEditableTable Demo

编程入门 行业动态 更新时间:2024-10-28 02:23:32

Demo.vue

<template>
    <a-card :bordered="false" style="min-height: 300px">

      <a-button @click="handleClickGetValue">点击获取数据</a-button>

        <j-editable-table
          ref="table1"
          :actionButton="true"
          :columns="columns"
          :dataSource="dataSource"
          :rowNumber="true"
          :rowSelection="true"
        >

          <template v-slot:action="props">
            <a @click="handleDelete(props)">删除</a>
          </template>

        </j-editable-table>

    </a-card>
</template>

<script>
  import { FormTypes } from '@/utils/JEditableTableUtil'
  import JEditableTable from '@/components/jeecg/JEditableTable'

  export default {
    name: 'Demo',
    components: { JEditableTable },
    data() {
      return {
        columns: [
          {
            title: '姓名',
            key: 'name',
            type: FormTypes.input,
            placeholder: '请输入${title}',
            defaultValue: '',
            validateRules: [
              {
                required: true, // 必填
                message: '${title}不能为空' // 提示的文本
              },
              {
                pattern: /^[a-z|A-Z][a-z|A-Z\d_-]{0,}$/, // 正则
                message: '${title}必须以字母开头,可包含数字、下划线、横杠'
              }
            ]
          },
          {
            title: '性别',
            key: 'gender',
            type: FormTypes.select,
            placeholder: '请选择${title}',
            options: [
              { title: '男', value: '1' },
              { title: '女', value: '2' }
            ]
          },
          {
            title: '年龄',
            key: 'age',
            type: FormTypes.inputNumber,
            placeholder: '请选择${title}',
            defaultValue: ''
          },
          {
            title: '是否在校',
            key: 'isSchool',
            width: '120px',
            type: FormTypes.checkbox,
            defaultChecked: true
          },
          {
            title: '开学时间',
            key: 'date',
            type: FormTypes.date
          },
          {
            title: '一寸照',
            key: 'upload',
            type: FormTypes.upload,
            token: true,
            action: window._CONFIG['domianURL'] + '/sys/common/upload',
            responseName: 'message'
          },
          {
            title: '操作',
            key: 'action',
            type: FormTypes.slot,
            slot: 'action' // slot 的名称,对应 v-slot 冒号后面和等号前面的内容
          }
        ],
        dataSource: []
      }
    },
    methods: {
      handleClickGetValue() {
        let values = this.$refs.table1.getValuesSync()
        console.log('获取到的值:',values)
      },

      handleDelete(props) {
        // 使用实例:删除当前操作的行
        let { rowId, target } = props
        target.removeRows(rowId)
      }
    }
  }
</script>

<style scoped>

</style>

更多推荐

jeecg-boot JEditableTable Demo

本文发布于:2023-06-14 00:04:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1416416.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:boot   jeecg   Demo   JEditableTable

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!