|
@@ -1,22 +1,39 @@
|
|
|
<template>
|
|
|
- <BasicTable @register="registerTable">
|
|
|
+ <BasicTable
|
|
|
+ @register="registerTable"
|
|
|
+ :rowSelection="{ type: 'checkbox', selectedRowKeys: checkedKeys, onChange: onSelectChange }"
|
|
|
+ >
|
|
|
<template #form-custom> custom-slot </template>
|
|
|
-
|
|
|
+ <template #headerTop>
|
|
|
+ <a-alert type="info" show-icon>
|
|
|
+ <template #message>
|
|
|
+ <template v-if="checkedKeys.length > 0">
|
|
|
+ <span>已选中{{ checkedKeys.length }}条记录(可跨页)</span>
|
|
|
+ <a-button type="link" @click="checkedKeys = []" size="small">清空</a-button>
|
|
|
+ </template>
|
|
|
+ <template v-else>
|
|
|
+ <span>未选中任何项目</span>
|
|
|
+ </template>
|
|
|
+ </template>
|
|
|
+ </a-alert>
|
|
|
+ </template>
|
|
|
<template #toolbar>
|
|
|
<a-button type="primary" @click="getFormValues">获取表单数据</a-button>
|
|
|
</template>
|
|
|
</BasicTable>
|
|
|
</template>
|
|
|
<script lang="ts">
|
|
|
- import { defineComponent } from 'vue';
|
|
|
+ import { defineComponent, ref } from 'vue';
|
|
|
import { BasicTable, useTable } from '/@/components/Table';
|
|
|
import { getBasicColumns, getFormConfig } from './tableData';
|
|
|
+ import { Alert } from 'ant-design-vue';
|
|
|
|
|
|
import { demoListApi } from '/@/api/demo/table';
|
|
|
|
|
|
export default defineComponent({
|
|
|
- components: { BasicTable },
|
|
|
+ components: { BasicTable, AAlert: Alert },
|
|
|
setup() {
|
|
|
+ const checkedKeys = ref<Array<string | number>>([]);
|
|
|
const [registerTable, { getForm }] = useTable({
|
|
|
title: '开启搜索区域',
|
|
|
api: demoListApi,
|
|
@@ -24,16 +41,24 @@
|
|
|
useSearchForm: true,
|
|
|
formConfig: getFormConfig(),
|
|
|
showTableSetting: true,
|
|
|
- rowSelection: { type: 'checkbox' },
|
|
|
+ showIndexColumn: false,
|
|
|
+ rowKey: 'id',
|
|
|
});
|
|
|
|
|
|
function getFormValues() {
|
|
|
console.log(getForm().getFieldsValue());
|
|
|
}
|
|
|
|
|
|
+ function onSelectChange(selectedRowKeys: (string | number)[]) {
|
|
|
+ console.log(selectedRowKeys);
|
|
|
+ checkedKeys.value = selectedRowKeys;
|
|
|
+ }
|
|
|
+
|
|
|
return {
|
|
|
registerTable,
|
|
|
getFormValues,
|
|
|
+ checkedKeys,
|
|
|
+ onSelectChange,
|
|
|
};
|
|
|
},
|
|
|
});
|