123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- import { Button, Form, FormInstance, Input, Radio, Select, Table } from "antd";
- import { useCallback, useMemo, useRef, useState } from "react";
- import { debounce } from "lodash";
- import { DageTableActions } from "@dage/pc-components";
- import { useNavigate } from "react-router-dom";
- const DEFAULT_PARAMS = {
- pageNum: 1,
- pageSize: 20,
- };
- export default function InformationPage() {
- const navigate = useNavigate();
- const formRef = useRef<FormInstance>(null);
- const [loading, setLoading] = useState(false);
- const [list, setList] = useState<[]>([]);
- const [params, setParams] = useState({
- ...DEFAULT_PARAMS,
- });
- const [total, setTotal] = useState(0);
- const COLUMNS = useMemo(() => {
- return [
- {
- title: "标题",
- dataIndex: "title",
- },
- {
- title: "问题数量",
- dataIndex: "nickName",
- },
- {
- title: "已收集份数",
- dataIndex: "date",
- },
- {
- title: "发布日期",
- dataIndex: "date",
- },
- {
- title: "展示状态",
- dataIndex: "date",
- },
- {
- title: "操作",
- render: (item: any) => {
- return <DageTableActions onEdit={() => {}} onDelete={() => {}} />;
- },
- },
- ];
- }, []);
- const handleReset = useCallback(() => {
- formRef.current?.resetFields();
- }, [formRef]);
- const debounceSearch = useMemo(
- () => debounce((changedVal: unknown, vals: any) => {}, 500),
- []
- );
- const paginationChange = useCallback(
- () => (pageNum: number, pageSize: number) => {
- setParams({ ...params, pageNum, pageSize });
- },
- [params]
- );
- return (
- <div className="information">
- <Form ref={formRef} layout="inline" onValuesChange={debounceSearch}>
- <Form.Item label="搜索项" name="stage">
- <Input
- placeholder="请输入标题,最多10字"
- maxLength={10}
- showCount
- allowClear
- />
- </Form.Item>
- <Form.Item>
- <Button
- type="primary"
- onClick={() => navigate("/questionnaire/create")}
- >
- 新增
- </Button>
- </Form.Item>
- <Form.Item>
- <Button onClick={handleReset}>重置</Button>
- </Form.Item>
- </Form>
- <Table
- loading={loading}
- className="page-table"
- dataSource={list}
- columns={COLUMNS}
- rowKey="id"
- pagination={{
- showQuickJumper: true,
- position: ["bottomCenter"],
- showSizeChanger: true,
- current: params.pageNum,
- pageSize: params.pageSize,
- total,
- onChange: paginationChange(),
- }}
- />
- </div>
- );
- }
|