IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> React使用 Ant Design 的From 组件时容易踩的坑 -> 正文阅读

[JavaScript知识库]React使用 Ant Design 的From 组件时容易踩的坑

1、使用Ant Design的From表单容易遇到的问题:

1.2使用MoDal + From表单如何回显?

定义 formRef = React.createRef();
在From表单引用 ref={this.formRef} ,定义initialValues 初始化值

1.3 Modal组件关闭如何清空Form表单的值?

和 Form 一起配合使用时,设置 destroyOnClose 也不会在 Modal 关闭时销毁表单字段数据,需要在Form表单处设置 preserve={false}
1.2和1.3的代码如下:

   formRef = React.createRef();
<Modal
                    width={550}
                    title={title}
                    visible={visible}
                    maskClosable={false}
                    onCancel={exitModal}
                    destroyOnClose={true}
                    footer={[
                        <Button key="confirm" type="primary" onClick={() => {
                            $('#submit_btn').click();
                        }}>确定</Button>,
                        <Button key="cancel" type="link" onClick={exitModal}>取消</Button>]}
                >

                    <Form onFinish={(values) => createOrUpdateApprovalRule(values)}
                          ref={this.formRef}
                          initialValues={isAdd=="edit"?approvalRuleInfo:{}}
                          preserve={false}
                    >
                        <Form.Item label="项目" name="projectId"
                                   rules={[
                                       {
                                           required: true,
                                           message: 'Required item cannot be empty',
                                       },
                                   ]}
                                   style={{marginLeft: '158px'}}
                        >
                            <Select style={{width: '260px'}}
                                    allowClear={true}
                                    onChange={onProjectChange}
                                    value={projectValue}
                                    disabled={isAdd=="edit"}
                                    onClear={(e)=>onClearChangeByProject(e)}
                            >
                                {
                                    (projectOption || []).map((item, index) => {
                                        return <Option key={index} value={item.value}>{item.label}</Option>
                                    })
                                }
                            </Select>
                        </Form.Item>
                        <Form.Item label="问题类型 " name="issueTypeId"
                                   rules={[
                                       {
                                           required: true,
                                           message: 'Required item cannot be empty',
                                       },
                                   ]}
                                   style={{marginLeft: '130px'}}
                        >
                            <Select style={{width: '260px'}}
                                    allowClear={true}
                                    onChange={onIssueTypeChange}
                                    value={issueTypeValue}
                                    onClear={(e)=>onClearChangeByIssueType(e)}
                            >
                                {
                                    (issueTypeOption || []).map((item, index) => {
                                        return <Option key={index} value={item.value}>{item.label}</Option>
                                    })
                                }
                            </Select>
                        </Form.Item>
                        <Button style={{display: "none"}} htmlType="submit" id="submit_btn"/>
                    </Form>

1.4 当Form表单设置 initialValues时,如何清空Form表单指定的值?

定义onclear事件,"issueTypeId"是指的From表单中所对应的name

const onClearChangeByProject = (e)=>{
                this.formRef.current.setFieldsValue({
                    issueTypeId: undefined,
                    statusId:undefined,
                    approveActionId:undefined,
                    rejectActionId:undefined
                })

        }

<Form.Item label="项目" name="projectId"
                                   rules={[
                                       {
                                           required: true,
                                           message: 'Required item cannot be empty',
                                       },
                                   ]}
                                   style={{marginLeft: '158px'}}
                        >
                            <Select style={{width: '260px'}}
                                    allowClear={true}
                                    onChange={onProjectChange}
                                    value={projectValue}
                                    disabled={isAdd=="edit"}
                                    onClear={(e)=>onClearChangeByProject(e)}
                            >
                                {
                                    (projectOption || []).map((item, index) => {
                                        return <Option key={index} value={item.value}>{item.label}</Option>
                                    })
                                }
                            </Select>
                        </Form.Item>
  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-07-24 11:20:57  更:2021-07-24 11:22:53 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/6 17:54:27-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码