【Antd】Form 表单获取不到 Input 的值

文章目录

今天遇到了一个奇怪的bug,Form表单中的Input组件的值,不能被Form获取,导致输入了内容,但是表单提交的时候值为undefined

  • 报错代码
ts 复制代码
import { Button,  Form, Input } from 'antd';
import React from 'react';

const App: React.FC = () => {
  const onFinish = ({desc) => {
    console.log('desc:', desc);	// undefined
  };

  return (
    <Form
      name="basic"
      labelCol={{ span: 8 }}
      wrapperCol={{ span: 16 }}
      onFinish={onFinish}
    >
      <Form.Item label="描述:" name="desc">
    	<Input.TextArea  />,
  	  </Form.Item>
      <Form.Item>
        <Button type="primary" htmlType="submit">
          Submit
        </Button>
      </Form.Item>
    </Form>
  );
};
  • 不知道大家看上面的报错示例是否一眼就看出问题了,没看出来没关系,我来解释一下
html 复制代码
<Form.Item label="描述:" name="desc">
 	<Input.TextArea  />,
</Form.Item>
  • 是的,没错,就是<Input.TextArea />右边多了个符号(,)导致的
  • 因为Form.ItemInput之间不能有其他多余内容
  • 比如:这样也是不行的,之间多了一层div结构什么的
html 复制代码
<Form.Item label="描述:" name="desc">
	<div>
 		<Input.TextArea  />
 	</div>
</Form.Item>
相关推荐
该用户已不存在1 分钟前
AI编程工具大盘点,哪个最适合你
前端·人工智能·后端
一头小鹿14 分钟前
【React Native+Appwrite】获取数据时的分页机制
前端·react native
冴羽22 分钟前
这是一个很酷的金属球,点击它会产生涟漪……
前端·javascript·three.js
烛阴30 分钟前
为什么 `Promise.then` 总比 `setTimeout(..., 0)` 快?微任务的秘密
前端·javascript·typescript
XiaoSong34 分钟前
基于 React Native/Expo 项目的持续集成(CI)最佳实践配置指南
前端·react native·react.js
white-persist40 分钟前
汇编代码详细解释:汇编语言如何转化为对应的C语言,怎么转化为对应的C代码?
java·c语言·前端·网络·汇编·安全·网络安全
张愚歌1 小时前
轻松打造个性化Leaflet地图标记
前端·javascript
华仔啊1 小时前
CSS实现高级流光按钮动画,这几行代码堪称神来之笔
前端·css
用户3777967210961 小时前
新值依赖旧值?并发更新的“坑”
javascript
歪歪1001 小时前
详细介绍一下“集中同步+分布式入库”方案的具体实现步骤
开发语言·前端·分布式·后端·信息可视化