使用示例

最后更新于:2022-04-02 07:14:01

# JVXETable 使用示例 [TOC=2,9] ## 示例一 >[info] 本示例演示了`JVXETable`的基本用法 ``` html ``` ## 示例二 >[info] 本示例演示了`columns`的基本用法 ``` js import { JVXETypes } from '@/components/jeecg/JVxeTable' /*--- 忽略部分代码片断 ---*/ columns: [ { title: '名称', key: 'name', type: JVXETypes.input, placeholder: '请输入${title}', defaultValue: '称名', // 表单验证规则 validateRules: [ { required: true, // 必填 message: '${title}不能为空' // 提示的文本 }, { pattern: /^[a-z|A-Z][a-z|A-Z\d_-]{0,}$/, // 正则 message: '${title}必须以字母开头,可包含数字、下划线、横杠' } ] }, { title: '年龄', key: 'age', type: JVXETypes.inputNumber, placeholder: '请输入${title}', defaultValue: 18, validateRules: [{required: true, message: '${title}不能为空'}] } ] /*--- 忽略部分代码片断 ---*/ ``` ## 示例三 >[info]本示例演示了如何进行`表单验证`和`获取数据` ``` // 进行表单验证 this.$refs.xTable.validateTable().then(errMap => { if (!errMap) { this.$message.success('验证通过') // 获取数据 let tableData = this.$refs.xTable.getTableData() let deleteData = this.$refs.xTable.getDeleteData() // 将通过后的数组提交到后台或自行进行其他处理 console.log({tableData , deleteData }) } else { // 验证未通过,errMap里包含具体未验证通过的详情 this.$message.error('验证未通过') } }) ``` ## 示例四 >[info]本示例演示了如何使用`插槽(slot)`和插槽的参数介绍 ``` html ``` ## 示例五 >[info]本示例演示了如何进行`自定义函数校验` ``` js columns: [ { title: '字段名称', key: 'dbFieldName', type: JVXETypes.input, validateRules: [ { // 自定义函数校验 handler handler({ cellValue, row, column }, callback, target) { // cellValue 当前校验的值 // row 当前行数据 // column 当前列配置 // callback(flag, message) 方法【必须执行】且只能执行一次。 // flag = 是否通过了校验,不填写或者填写 null 代表不进行任何操作 // message = 提示的类型,默认使用配置的 message // target 行编辑的实例对象 // 示例: if (cellValue === 'abc') { callback(false, '${title}不能是abc') // false = 未通过,可以跟自定义提示 } else { callback(true) // true = 通过验证 } }, message: '${title}默认提示' } ] }, ] ```
';