<template>
<a-table
:columns="columns"
:data-source="data"
:row-selection="rowSelection"
/>
</template>
<script lang="ts">
import { defineComponent } from 'vue'
const columns = [
{
title: 'Name',
dataIndex: 'name',
key: 'name',
},
{
title: 'Age',
dataIndex: 'age',
key: 'age',
width: '12%',
},
{
title: 'Address',
dataIndex: 'address',
width: '30%',
key: 'address',
},
]
const data = [
{
key: 1,
name: 'John Brown sr.',
age: 60,
address: 'New York No. 1 Lake Park',
},
{
key: 2,
name: 'Joe Black',
age: 32,
address: 'Sidney No. 1 Lake Park',
},
]
const rowSelection = {
// 選中項發生變化時的回調;根據這個函數就可以獲取用戶勾選的哪一個值
onChange: (selectedRowKeys: (string | number)[], selectedRows: []) => {
console.log(
`選中的值: ${selectedRowKeys}`,
'selectedRows: ',
selectedRows
)
},
// 戶手動選擇/取消選擇某列的回調
onSelect: (record: [], selected: boolean, selectedRows: []) => {
console.log(
' 戶手動選擇/取消選擇某列的回調 ',
record,
selected,
selectedRows
)
},
// 用戶手動選擇/取消選擇所有列的回調
onSelectAll: (selected: boolean, selectedRows: [], changeRows: []) => {
console.log(
' 用戶手動選擇/取消選擇所有列的回調 ',
selected,
selectedRows,
changeRows
)
},
}
export default defineComponent({
setup() {
return {
data,
columns,
rowSelection,
}
},
})
</script>
