diff --git a/packages/components/table/__tests__/table.test.ts b/packages/components/table/__tests__/table.test.ts index 4126dcf402..86d2c1b397 100644 --- a/packages/components/table/__tests__/table.test.ts +++ b/packages/components/table/__tests__/table.test.ts @@ -800,7 +800,7 @@ describe('Table.vue', () => { }, template: ` - + @@ -813,6 +813,9 @@ describe('Table.vue', () => { this.fireCount++ this.selection = selection }, + selectable(row) { + return row.id !== 1 + }, }, data() { @@ -844,7 +847,7 @@ describe('Table.vue', () => { const vm = wrapper.vm vm.$refs.table.toggleAllSelection() await doubleWait() - expect(vm.selection.length).toEqual(5) + expect(vm.selection.length).toEqual(4) vm.$refs.table.toggleAllSelection() await doubleWait() diff --git a/packages/components/table/src/store/watcher.ts b/packages/components/table/src/store/watcher.ts index 47a527026c..5cb43eed95 100644 --- a/packages/components/table/src/store/watcher.ts +++ b/packages/components/table/src/store/watcher.ts @@ -197,13 +197,7 @@ function useWatcher() { children: instance?.store?.states?.childrenColumnName.value, checkStrictly: instance?.store?.states?.checkStrictly.value, } - const changed = toggleRowStatus( - selection.value, - row, - selected, - treeProps, - selectable.value - ) + const changed = toggleRowStatus(selection.value, row, selected, treeProps) if (changed) { const newSelection = (selection.value || []).slice() // 调用 API 修改选中值,不触发 select 事件