
【Mock平台】为系列测试开发教程,从0到1编码带你一步步使用Spring Boot 和 Antd React框架完成搭建一个测试工具平台,希望作为一个实战项目对各位的测试开发学习之路有帮助,欢迎关注《大奇测试开发》公众号、博客、语雀等原创渠道获取最佳阅读,大奇一个专注测试技术干货原创与分享的家伙。
1.组件Modal对话框
在页面交互上当想做不打断工作流,不跳转新页面的操作,常用的组件之一就是Modal对话框,场景比如简单添加、查看详细、二次确认等。
1.1 默认标准使用
使用 Modal 需要导入组件 **import { Modal } from 'antd'**通过属性**visible**控制显隐,其中还有两个主要的触发事件 **onOk**点击确定回调, **onCancel**点击遮罩层或右上角叉或取消按钮的回调。
为此我们创建一个演示空白页,内部定义useState变量,通过一个基础的Button按钮触发 onClick 事件
�实现弹出对话框。
import React, { useState } from 'react';import { Modal, Button } from 'antd';const ModalDemo = () => {// 定义Hook state变量,控制对话框显隐,默认falseconst [modalVisible, setModalVisible] = useState(false);// 打开对话框方法,主要设置modalVisible=trueconst openModal = () => {setModalVisible(true);};// 对话框确定按钮点击的操作const okModal = () => {console.log('点击了对话框OK按钮!')setModalVisible(false);}// render渲染divreturn(<><Button type="primary" onClick={openModal}>打开基础对话框</Button><Modaltitle="基础Modal"visible={modalVisible}onCancel={()=>setModalVisible(false)}onOk={okModal}><p>这是一个简单对话框打开和关闭演示!</p></Modal></>)}export default ModalDemo;
代码中OpenModal方法中设置modalVisible=true来控制显示,另外默认Modal页脚会带有“确定”和“取消”两个按钮 ,其操作分别对应 onCancel 和 onOK 事件,取消一般是关闭动作,这里演示就在 { } 用箭头函数使其modalVisible=false隐藏对话框,确定按钮则单独写个函数方法,里边做一些逻辑操作,最后如处理正常后同样设置隐藏。
1.2 消息提示样式
只提供一个按钮用于关闭,一般用于各类的消息提示,其有 info,success,error,warning 四种类型(样式不同),使用的方法是直接在对应函数中通过 Modal.类型创建,举一个成功消息提示的例子。
import { Modal, Button } from 'antd';const ModalDemo = () => {/** 确认对话框一般用于提示 **/const successModal = () => {Modal.success({content: '成功:大奇与你一起,坚持学习,持续成长!',});};// render渲染divreturn(<div id="confirmModal"><Button type="link" onClick={successModal}>打开成功消息对话框</Button></div>)}export default ModalDemo;
此类型无需手动控制显示隐藏,方法中动态创建,点击知道了默认关闭对话框。
2.组件Form表单
数据保存场景,并且需要对提交的字段进行校验时候,自带数据域管理的Form表单组件最为合适。
2.1 基础使用例子
使用 Form 需要 **import { Form } from 'antd'**导入此组件,其<Form>父组件中**onFinish**事件用于提交表单且数据验证成功后的回调。子组件<Form.Item>配置表单字段,用于数据双向绑定、校验、布局等,字段组件内两个基本属性 label 作用于页面显示,name 用户变量定义数据绑定。
import React, { useState } from 'react';import { Form, Button, Input } from 'antd';const FormDemo = () => {// 提交按钮触发onFinish事件,其中values为表单的绑定参数集const baseOnFinish = (values) => {console.log('Form.Item绑定的字段集合:', values);};return(<><Form onFinish={baseOnFinish}><Form.Item name="item1" label="字段1"><Input/></Form.Item><Form.Item name="item2" label="字段2"><Input width='200'/></Form.Item><Form.Item><Button type="primary" htmlType="submit">提交</Button></Form.Item></Form></>)}export default FormDemo;
特别注意,代码中onFinish事件的触发,需要通过一个Button按钮指定htmlType="submit"即表单的属性。
除了上图中布局,组件还可以通过
