diff --git a/src/components/table/StandardTable.vue b/src/components/table/StandardTable.vue index 554a7cd..27650a4 100644 --- a/src/components/table/StandardTable.vue +++ b/src/components/table/StandardTable.vue @@ -2,17 +2,14 @@
-
- 已选择 {{selectedRows.length}} 项   -
-
+
+ 已选择 {{selectedRows.length}} 项 清空 +
@@ -39,22 +36,12 @@ export default { data () { return { needTotalList: [], - selectedRowKeys: [], scopedSlots: [] } }, methods: { updateSelect (selectedRowKeys, selectedRows) { - this.selectedRowKeys = selectedRowKeys - let list = this.needTotalList - this.needTotalList = list.map(item => { - return { - ...item, - total: selectedRows.reduce((sum, val) => { - return sum + val[item.dataIndex] - }, 0) - } - }) + this.$emit('update:selectedRows', selectedRows) this.$emit('change', selectedRowKeys, selectedRows) }, initTotalList (columns) { @@ -69,6 +56,10 @@ export default { getScopedSlots(columns) { return columns.filter(item => item.scopedSlots && item.scopedSlots.customRender) .map(item => item.scopedSlots.customRender) + }, + onClear() { + this.updateSelect([], []) + this.$emit('clear') } }, created () { @@ -76,7 +67,7 @@ export default { this.needTotalList = this.initTotalList(this.columns) }, watch: { - 'selectedRows': function (selectedRows) { + selectedRows (selectedRows) { this.needTotalList = this.needTotalList.map(item => { return { ...item, @@ -86,12 +77,27 @@ export default { } }) } + }, + computed: { + selectedRowKeys() { + return this.selectedRows.map(row => row.key) + } } } - diff --git a/src/pages/list/QueryList.vue b/src/pages/list/QueryList.vue index bcc8b44..20f48b1 100644 --- a/src/pages/list/QueryList.vue +++ b/src/pages/list/QueryList.vue @@ -95,8 +95,8 @@
{{text}} @@ -110,7 +110,7 @@