From 19183ec23cb2e7ec5df72c98de1b17b5f63bb499 Mon Sep 17 00:00:00 2001 From: llnewuser Date: Sat, 28 Jul 2018 20:50:33 +0800 Subject: [PATCH 1/2] toggleSelectAll method should only operate on filtered data --- src/components/transfer/list.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/transfer/list.vue b/src/components/transfer/list.vue index 21372818..d582231c 100644 --- a/src/components/transfer/list.vue +++ b/src/components/transfer/list.vue @@ -118,8 +118,8 @@ }, toggleSelectAll (status) { const keys = status ? - this.data.filter(data => !data.disabled || this.checkedKeys.indexOf(data.key) > -1).map(data => data.key) : - this.data.filter(data => data.disabled && this.checkedKeys.indexOf(data.key) > -1).map(data => data.key); + this.filterData.filter(data => !data.disabled || this.checkedKeys.indexOf(data.key) > -1).map(data => data.key) : + this.filterData.filter(data => data.disabled && this.checkedKeys.indexOf(data.key) > -1).map(data => data.key); this.$emit('on-checked-keys-change', keys); }, handleQueryClear () { From bdc80049181ba06ff634474337050bcd85cfbd92 Mon Sep 17 00:00:00 2001 From: llnewuser Date: Mon, 30 Jul 2018 15:59:25 +0800 Subject: [PATCH 2/2] =?UTF-8?q?checkbox=E2=80=98s=20status=20is=20also=20d?= =?UTF-8?q?epends=20on=20filtered=20data?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/transfer/list.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/components/transfer/list.vue b/src/components/transfer/list.vue index d582231c..5a1f5b58 100644 --- a/src/components/transfer/list.vue +++ b/src/components/transfer/list.vue @@ -83,10 +83,10 @@ return (validKeysCount > 0 ? `${validKeysCount}/` : '') + `${this.data.length}`; }, checkedAll () { - return this.data.filter(data => !data.disabled).length === this.validKeysCount && this.validKeysCount !== 0; + return this.filterData.filter(data => !data.disabled).length === this.validKeysCount && this.validKeysCount !== 0; }, checkedAllDisabled () { - return this.data.filter(data => !data.disabled).length <= 0; + return this.filterData.filter(data => !data.disabled).length <= 0; }, filterData () { return this.showItems.filter(item => this.filterMethod(item, this.query));