Merge pull request #34 from jieme/master

支持选择多行进行验证
This commit is contained in:
Xu Liangzhan
2019-05-30 05:31:04 -05:00
committed by GitHub
2 changed files with 28 additions and 2 deletions

View File

@@ -4,6 +4,7 @@
<vxe-button @click="insertEvent">新增</vxe-button>
<vxe-button @click="validEvent">校验</vxe-button>
<vxe-button @click="selectValidEvent">选中校验</vxe-button>
<vxe-button @click="getInsertEvent">获取新增</vxe-button>
<vxe-button @click="getRemoveEvent">获取删除</vxe-button>
<vxe-button @click="getUpdateEvent">获取修改</vxe-button>
@@ -51,6 +52,7 @@ export default {
`
<vxe-button @click="insertEvent">新增</vxe-button>
<vxe-button @click="validEvent">校验</vxe-button>
<vxe-button @click="selectValidEvent">选中校验</vxe-button>
<vxe-button @click="getInsertEvent">获取新增</vxe-button>
<vxe-button @click="getRemoveEvent">获取删除</vxe-button>
<vxe-button @click="getUpdateEvent">获取修改</vxe-button>
@@ -95,6 +97,15 @@ export default {
}
})
},
selectValidEvent () {
let getSelectRecords = this.$refs.xTable.getSelectRecords()
if(getSelectRecords.length>0){
this.$refs.xTable.validate(getSelectRecords,valid => {
if (valid) {
}
})
}
},
insertEvent () {
this.$refs.xTable.insert().then(({ row }) => {
// 插入一条数据并触发校验
@@ -148,6 +159,15 @@ export default {
}
})
})
},
selectValidEvent () {
let getSelectRecords = this.$refs.xTable.getSelectRecords()
if(getSelectRecords.length>0){
this.$refs.xTable.validate(getSelectRecords,valid => {
if (valid) {
}
})
}
},
getInsertEvent () {
let insertRecords = this.$refs.xTable.getInsertRecords()

View File

@@ -2806,11 +2806,17 @@ export default {
return Promise.resolve()
},
/**
* 对整个表格数据进行校验
* 对表格数据进行校验
* 若传rows为多行记录则只验证传入的行否则默认验证整个表格数据
* 返回 Promise 对象,或者使用回调方式
*/
validate (cb) {
validate (rows, cb) {
let { editRules, tableData } = this
if (XEUtils.isFunction(rows)) {
cb = rows
} else if (XEUtils.isArray(rows)) {
tableData = rows
}
let validPromise = Promise.resolve(true)
this.lastCallTime = Date.now()
this.clearValidate()