網站首頁 編程語言 正文
問題:
Warning: [antd: Form] antd v4 removed `Form.create`. Please remove or use `@ant-design/compatible` instead.
原因:
v4 的 Form 不再需要通過?Form.create()
?創建上下文。Form 組件現在自帶數據域,因而?getFieldDecorator
?也不再需要,直接寫入 Form.Item 即可
antd3方案:
// antd v3
const Demo = ({ form: { getFieldDecorator } }) => (
<Form>
<Form.Item>
{getFieldDecorator('username', {
rules: [{ required: true }],
})(<Input />)}
</Form.Item>
</Form>
);
const WrappedDemo = Form.create()(Demo);
antd4方案:
getFieldDecorator類似于這些,都廢棄了。
// antd v4
const Demo = () => (
<Form>
<Form.Item name="username" rules={[{ required: true }]}>
<Input />
</Form.Item>
</Form>
);
由于移除了 Form.create(),原本的 onFieldsChange 等方法移入 Form 中,通過 fields 對 Form 進行控制。
antd4從表單獲取數據:
表單的數據函數都可以寫在Form里面,成功獲取onFinish,獲取失敗onFinishFailed
import { Form, Input, Button, Checkbox } from 'antd';
const Demo = () => {
const onFinish = (values: any) => {
console.log('Success:', values);
};
const onFinishFailed = (errorInfo: any) => {
console.log('Failed:', errorInfo);
};
return (
<Form
name="basic"
labelCol={{ span: 8 }}
wrapperCol={{ span: 16 }}
initialValues={{ remember: true }}
onFinish={onFinish}
onFinishFailed={onFinishFailed}
autoComplete="off"
>
<Form.Item
label="Username"
name="username"
rules={[{ required: true, message: 'Please input your username!' }]}
>
<Input />
</Form.Item>
<Form.Item
label="Password"
name="password"
rules={[{ required: true, message: 'Please input your password!' }]}
>
<Input.Password />
</Form.Item>
<Form.Item name="remember" valuePropName="checked" wrapperCol={{ offset: 8, span: 16 }}>
<Checkbox>Remember me</Checkbox>
</Form.Item>
<Form.Item wrapperCol={{ offset: 8, span: 16 }}>
<Button type="primary" htmlType="submit">
Submit
</Button>
</Form.Item>
</Form>
);
};
ReactDOM.render(<Demo />, mountNode);
原文鏈接:https://mayouchen.blog.csdn.net/article/details/122734059
相關推薦
- 2022-09-22 C語言自定義類型——枚舉,聯合體
- 2022-07-13 常用類之包裝類和String類
- 2022-07-26 二分搜索防止整形溢出
- 2022-12-31 一文初探Go語言中的reflect反射包_Golang
- 2022-11-06 關于useEffect執行兩次的問題及解決_React
- 2022-12-30 python算法與數據結構朋友圈與水杯實驗題分析實例_python
- 2022-08-11 python?rpyc客戶端調用服務端方法的注意說明_python
- 2023-03-16 Android虛擬機Dalvik和ART科普_Android
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支