From 0250ff5685e53b556a9aa8b243d4ed548f1e0eef Mon Sep 17 00:00:00 2001 From: jieme <5328234+jieme@users.noreply.github.com> Date: Thu, 30 May 2019 04:00:24 +0800 Subject: [PATCH 1/4] Update table.js MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit refactor:修改表格数据校验方法,可支持选中多行行进行验证 --- src/components/table/src/table.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/components/table/src/table.js b/src/components/table/src/table.js index 9df8dba48..1ea5b624f 100644 --- a/src/components/table/src/table.js +++ b/src/components/table/src/table.js @@ -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() From 67de7f43e3bc8e7721eb3a3bfe657e69c94d7eca Mon Sep 17 00:00:00 2001 From: jieme <5328234+jieme@users.noreply.github.com> Date: Thu, 30 May 2019 04:01:39 +0800 Subject: [PATCH 2/4] Update RowValid.vue MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit refactor:修改表格数据校验方法,可支持选中多行行进行验证 --- examples/views/table/edit/RowValid.vue | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/examples/views/table/edit/RowValid.vue b/examples/views/table/edit/RowValid.vue index 8b12681f5..1826cda43 100644 --- a/examples/views/table/edit/RowValid.vue +++ b/examples/views/table/edit/RowValid.vue @@ -4,6 +4,7 @@ 新增 校验 + 选中校验 获取新增 获取删除 获取修改 @@ -51,6 +52,7 @@ export default { ` 新增 校验 + 选中校验 获取新增 获取删除 获取修改 @@ -95,6 +97,21 @@ export default { } }) }, + validEvent () { + this.$refs.xTable.validate(valid => { + if (valid) { + } + }) + }, + 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 +165,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() From ddf8ec96e0f6deba644873c14d2b91c003b7e558 Mon Sep 17 00:00:00 2001 From: jieme <5328234+jieme@users.noreply.github.com> Date: Thu, 30 May 2019 04:01:48 +0800 Subject: [PATCH 3/4] Update RowValid.vue MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit refactor:修改表格数据校验方法,可支持选中多行行进行验证 From adcba8b8399bf1f12473d9fb6cc73acb4a6e0326 Mon Sep 17 00:00:00 2001 From: jieme <5328234+jieme@users.noreply.github.com> Date: Thu, 30 May 2019 04:09:09 +0800 Subject: [PATCH 4/4] Update RowValid.vue --- examples/views/table/edit/RowValid.vue | 6 ------ 1 file changed, 6 deletions(-) diff --git a/examples/views/table/edit/RowValid.vue b/examples/views/table/edit/RowValid.vue index 1826cda43..cef1ee665 100644 --- a/examples/views/table/edit/RowValid.vue +++ b/examples/views/table/edit/RowValid.vue @@ -91,12 +91,6 @@ export default { this.tableData = window.MOCK_DATA_LIST.slice(0, 6) }, methods: { - validEvent () { - this.$refs.xTable.validate(valid => { - if (valid) { - } - }) - }, validEvent () { this.$refs.xTable.validate(valid => { if (valid) {