"use client"; import { Button, Card, Drawer, Form, Image, Input, InputNumber, message, Popconfirm, Space, Table } from "antd"; import { useState } from "react"; import { useAntdTable } from "ahooks"; import { mRequest } from "@/app/_lib/request"; import LinkTable from "./LinkTable"; import ImageUpload from "@/app/_ui/ImageUpload"; import { getLinkTypeList, LinkType } from "@/app/_lib/data/linkType"; import '@ant-design/v5-patch-for-react-19'; export default function Page() { const { tableProps, refresh } = useAntdTable( async ({ current, pageSize }) => getLinkTypeList({ page: current, pageSize }), ) const [selectedType, setSelectedType] = useState( undefined ) return ( <> } > {...tableProps} rowKey="_id" expandable={{ expandedRowRender: (row) => , }} columns={[ { title: "名称", dataIndex: "label", }, { title: "图标", dataIndex: "icon", render: (_, item) => ( <> ) }, { title: "操作", render: (_, item) => ( { mRequest("DELETE", "/api/linkType/" + item._id, { returnType: "text", }).then(() => { refresh() message.success("删除成功") }) }} > ), }, ]} /> { setSelectedType(undefined) }} >
{ if (selectedType) { await mRequest("PUT", "/api/linkType", { _id: selectedType._id, ...res }) } else { await mRequest("POST", "/api/linkType", { ...res, }) } refresh() setSelectedType(undefined) message.success("操作成功") }} >
{/* { setSelectedType(undefined) }} >
{ if (selectedType) { await mRequest("PUT", "/api/linkType", { _id: selectedType._id, ...res }) } else { await mRequest("POST", "/api/linkType", { ...res, }) } refresh() setSelectedType(undefined) message.success("操作成功") }} >
*/} ) }