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属性来指定一个字段路径,这样就可以创建嵌套的表单数据结构。

相关推荐
董员外30 分钟前
LangChain.js 快速上手指南:模型接入、流式输出打造基础
前端·javascript·后端
AomanHao34 分钟前
基于高德地图JS的旅游足迹,可嵌入个人博客中
前端
用户40993225021234 分钟前
Vue3组件开发中如何兼顾复用性、可维护性与性能优化?
前端·vue.js·trae
千寻girling35 分钟前
面试官 : “ 请问你实际开发中用过 函数柯理化 吗? 能讲一下吗 ?”
前端·javascript·面试
golang学习记36 分钟前
Claude Opus 4.6 正式发布:Agent 时代的编程王者与长上下文革命
前端·人工智能·后端
双向3339 分钟前
RAG实战解密:三步构建你的智能文档问答系统(附开源方案)
前端
DEMO派1 小时前
前端CSRF攻击代码演示及防御方案解析
前端·csrf
change_fate2 小时前
vite 修改base之后需要修改public路径
javascript·vue.js
REDcker2 小时前
Media Source Extensions (MSE) 详解
前端·网络·chrome·浏览器·web·js
阿珊和她的猫2 小时前
Chrome 的 SameSite 属性:原理与解决方案
前端·chrome