import { message } from "@/utils/message"; import { tableData } from "../data"; // 如果您不习惯tsx写法,可以传slot,然后在template里写 // 需是hooks写法(函数中有return),避免失去响应性 export function useColumns() { const columns: TableColumnList = [ { label: "日期", prop: "date", cellRenderer: ({ row }) => (
{row.date}
) }, { label: "姓名", prop: "name", cellRenderer: ({ row }) => ( {{ default: () => ( <>
name: {row.name}
address: {row.address}
), reference: () => {row.name} }}
) }, { label: "地址", prop: "address" }, { label: "操作", cellRenderer: ({ index, row }) => ( <> handleEdit(index + 1, row)}> Edit handleDelete(index + 1, row)} > Delete ) } ]; const handleEdit = (index: number, row) => { message(`您修改了第 ${index} 行,数据为:${JSON.stringify(row)}`, { type: "success" }); }; const handleDelete = (index: number, row) => { message(`您删除了第 ${index} 行,数据为:${JSON.stringify(row)}`); }; return { columns, tableData }; }