zoukankan      html  css  js  c++  java
  • ant-design-pro 的EditableProTable表格验证调用

    博客源码https://github.com/shengbid/antdpro-demo,有需要可以下载下来看效果
     
    EditableProTable默认是在单行保存时调用表单验证
     
    我这里的需求是点击外部的保存要对整个表单进行验证

    EditableProTable提供了editable属性,可以设置form
    https://procomponents.ant.design/components/editable-table
     
    代码
    import React, { useState, useEffect } from 'react'
    import { Row, Col, Button, Form, message } from 'antd'
    import { EditableProTable } from '@ant-design/pro-table'
    
    const EditZTTable: React.FC = () => {
      const [editableKeys, setEditableRowKeys] = useState<React.Key[]>([])
      const [dataSource, setDataSource] = useState<projectRiskProps[]>([])
      const [editForm] = Form.useForm()
    
      // 提交方法
      const onSave = async () => {
        await editForm.validateFields() // 调用表单验证
      }
    
      return (
        <>
          <EditableProTable
            columns={columns}
            rowKey="id"
            value={dataSource}
            recordCreatorProps={{
              newRecordType: 'dataSource',
              record: () => ({
                id: Date.now(),
              }),
            }}
            editable={{
              type: 'multiple',
              form: editForm,
              editableKeys,
              actionRender: (row, config, defaultDoms) => {
                return [defaultDoms.delete]
              },
              onValuesChange: (record, recordList) => {
                setDataSource(recordList)
              },
              onChange: (editableKeyss, editableRows: projectRiskProps[]) => {
                setEditableRowKeys(editableKeyss)
                setDataSource(editableRows)
              },
            }}
          />
          <Row>
            <Col span={24} style={{ textAlign: 'right' }}>
              <Button style={{ margin: '15px 8px 0' }} onClick={onCancel}>取消</Button>
              <Button type="primary" onClick={onSave}>保存</Button>
            </Col>
          </Row>
        </>
      )
    }
    export default EditZTTable
  • 相关阅读:
    ThinkPHP安全规范指引
    正则表达式:不能包含某些特殊字符串
    头晕是因为虚 ( ̄^ ̄゜)
    vs code中文扩展包
    table-cell width:1% 深入理解
    C#使用NPOI操作Excel
    C#利用LumenWorks.Framework.IO.Csv读取CSV文件
    发送邮件代码
    .net 集合详解
    EF Code First:数据更新最佳实践
  • 原文地址:https://www.cnblogs.com/steamed-twisted-roll/p/14694593.html
Copyright © 2011-2022 走看看