react antd form嵌套折叠面板Collapse

javascript 复制代码
import React from 'react';
import { Form, Input, Collapse, Button } from 'antd';
 
const { Panel } = Collapse;
 
const App = () => {
  const onFinish = (values) => {
    console.log('Received values of form: ', values);
  };
 
  return (
    <Form onFinish={onFinish}>
      <Collapse>
        <Panel header="折叠面板1" key="1">
          <Form.Item name={['user', 'name1']} label="Name">
            <Input />
          </Form.Item>
          <Form.Item name={['user', 'age1']} label="Age">
            <Input />
          </Form.Item>
        </Panel>
        <Panel header="折叠面板2" key="2">
          <Form.Item name={['user', 'name2']} label="Name">
            <Input />
          </Form.Item>
          <Form.Item name={['user', 'age2']} label="Age">
            <Input />
          </Form.Item>
        </Panel>
      </Collapse>
      <Button type="primary" htmlType="submit">
        提交
      </Button>
    </Form>
  );
};
 
export default App;

上述代码中,包含两个折叠面板的表单。每个折叠面板都有自己的一组表单字段。当提交表单时,所有的表单数据会以一个嵌套对象的形式被提交。使用Form.Item组件的name属性来指定一个字段路径,这样就可以创建嵌套的表单数据结构。

相关推荐
Jenlybein2 分钟前
Vue3 权限控制:利用动态路由与自定义指令
前端·vue.js
codelang1 小时前
Cline + MCP 开发实战
前端·后端
好_快3 小时前
Lodash源码阅读-memoizeCapped
前端·javascript·源码阅读
好_快3 小时前
Lodash源码阅读-toString
前端·javascript·源码阅读
好_快3 小时前
Lodash源码阅读-memoize
前端·javascript·源码阅读
excel3 小时前
webpack 核心编译器 十四 节
前端
excel3 小时前
webpack 核心编译器 十三 节
前端
腾讯TNTWeb前端团队10 小时前
helux v5 发布了,像pinia一样优雅地管理你的react状态吧
前端·javascript·react.js
范文杰13 小时前
AI 时代如何更高效开发前端组件?21st.dev 给了一种答案
前端·ai编程
拉不动的猪14 小时前
刷刷题50(常见的js数据通信与渲染问题)
前端·javascript·面试