




免费预览已结束,剩余7页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
AntDesignPro开发手册修订历史记录日期版本说明作者目录1. 前言1.1目的让不熟悉Ant Design Pro 的开发人员快速掌握开发方式1.2概述Ant Design Pro是一个前端设计解决方案,由蚂蚁金服体验技术部出品/维护。核心技术组成: ES2015+ JavaScript语言的新标准 React 用于构建用户界面的 JAVASCRIPT 库 dva 是基于(redux(状态管理) + react-router(路由库) + redux-saga(异步中间件) 等)的一层轻量封装 g2 一套基于可视化编码的图形语法 antd React组件2. 开发环境2.1 Node.js 安装配置Node.js安装包及源码下载地址为:/en/download/2.2安装方式2.2.1直接 clone git 仓库git clone -depth=1 /ant-design/ant-design-pro.git my-projectcd my-project2.2.2使用集成化的命令行工具 ant-design-pro-cli。npm install ant-design-pro-cli -g #安装脚手架mkdir my-project cd my-projectpro new # 创建一个新项目2.3 目录结构 mock # 本地模拟数据 public # 公共资源 favicon.ico # 网站图标 src assets # 本地静态资源 common # 应用公用配置,如导航信息 components # 业务通用组件 e2e # 集成测试用例 layouts # 通用布局 models # 数据交互 routes # 业务页面入口和常用模板 services # 后台接口服务 utils # 工具库 g2.js # 可视化图形配置 theme.js # 主题配置 index.ejs # HTML 入口模板 index.js # 应用入口 index.less # 全局样式 router.js # 路由入口 tests # 测试工具 README.md # 项目说明 package.json # 项目配置文件2.4 项目初始化2.4.1安装依赖npm install2.4.2启动应用npm start2.4.3打包npm run build该命令会生成 *.js、*.css、index.html 等静态文件3. 开发指导3.1开发规范3.2 开发流程示意图3.3 开发实例3.3.1 新建一个菜单编辑菜单配置文件src/common/menu.js,在menuData里添加菜单配置,数据格式为json格式,详细配置请参照下图3.3.2 新建一个路由配置路由配置文件src/common/router.js,在routerConfig里添加路由配置,数据格式为json格式,详细配置请参照下图3.3.3 新建一个路由页面页面元素文件 src/routes/HostOperation/HostMonitor.jsimport React, PureComponent, Fragment from react;import connect from dva;import Row, Col, Card, Form, Input, Select, Icon, Button, Dropdown, Menu,InputNumber, DatePicker, Modal, message, Badge, Divider, Steps, Radio from antd;import StandardTable from ././components/StandardTable;import PageHeaderLayout from ././layouts/PageHeaderLayout;import styles from ./HostMonitor.less;const FormItem = Form.Item;const getValue = obj = Object.keys(obj).map(key = objkey).join(,);/ 和hostMonitor建立连接,进行页面的数据交互connect( hostMonitor,loading ) = (hostMonitor,loading: loading.effectshostMonitor/getMonitorList)/ 创建form对象,固定写法Form.create()export default class HostMonitor extends PureComponent state = modalVisible: false,updateModalVisible: false,expandForm: false,selectedRows: ,formValues: ,stepFormValues: ,;/ 渲染页面完成后执行componentDidMount() const dispatch = ps;dispatch(type: hostMonitor/getMonitorList,);/表格表头定义columns = title: 触发器,dataIndex: description,title: 主机名称,dataIndex: name,title: 主机IP,dataIndex: host_ip,title: 系统运行时间,dataIndex: t,title: 操作系统,dataIndex: host_group.os,title: 所属系统,dataIndex: host_group.system,title: 网络区域,dataIndex: host_,;/ 表格发生操作时执行函数handleStandardTableChange = (pagination, filtersArg, sorter) = const dispatch = ps;const formValues = this.state;const filters = Object.keys(filtersArg).reduce(obj, key) = const newObj = .obj ;newObjkey = getValue(filtersArgkey);return newObj;, );var params = currentPage: pagination.current,pageSize: pagination.pageSize,;if (sorter.field) params.sorter = $sorter.field_$sorter.order;dispatch(type: hostMonitor/getMonitorList,payload: params,);/ 操作重置按钮时执行函数handleFormReset = () = const form, dispatch = ps;form.resetFields();this.setState(formValues: ,);dispatch(type: hostMonitor/getMonitorList,payload: ,);/ 查询条件展开/收起toggleForm = () = this.setState(expandForm: !this.state.expandForm,);/ 选择行handleSelectRows = (rows) = this.setState(selectedRows: rows,);/ 操作查询按钮handleSearch = (e) = e.preventDefault();const dispatch, form = ps;form.validateFields(err, fieldsValue) = if (err) return;const values = .fieldsValue,updatedAt: fieldsValue.updatedAt & fieldsValue.updatedAt.valueOf(),;this.setState(formValues: values,);dispatch(type: hostMonitor/getMonitorList,payload: values,););/显示/隐藏模态窗口 !flag:将flag强转为布尔类型handleModalVisible = (flag) = this.setState(modalVisible: !flag,);/显示/隐藏模态窗口handleUpdateModalVisible = (flag, record) = this.setState(updateModalVisible: !flag,stepFormValues: record | ,);/ 查询条件表单renderSimpleForm() const getFieldDecorator = ps.form;return (getFieldDecorator(hostIp)()查询重置);/选择默认的查询条件表单renderForm() return this.renderSimpleForm();/渲染页面render() const hostMonitor:data ,loading = ps;const newdata = data?data:list: ,pagination: ,;const selectedRows, modalVisible, updateModalVisible, stepFormValues = this.state;return (this.renderForm(); 页面样式文件 src/routes/HostOperation/HostMonitor.less3.3.4 新建一个数据模型新建model文件:srcmodelshostMonitor.jsimport getMonitorList from ./services/trans;export default / model命名空间,唯一的namespace: hostMonitor,/ 初始化状态数据state: data: list: ,pagination: ,/ 定义发送请求的功能方法effects: *getMonitorList( payload , call, put ) const response = yield call(getMonitorList, payload);const resp = response?response:;yield put(type: queryList,payload: resp ? resp : ,);,/ 更新页面状态及数据reducers: queryList(state, action) return .state,data: action.payload.data,;,;3.3.5 新建一个模拟请求数据返回新建service文件:srcservicestrans.jsimport stringify from qs;import request from ./utils/request;/* 获取主机列表数据* param * params */这里定义的方法是由model调用的export async function getMonitorList(params) console.error(getMonitorList.);console.error(params);/ 这里的地址是一个模拟地址,在.roadhogrc.mock.js里定义,数据会返回modelreturn request(/trans/operation/monitor?$stringify(params), method: POST,body: params,);POST /trans/operation/monitor: (req, res) = res.send(status: ok,data: getMonitorList);,export const getMonitorList = list: dataSource,pagination: total: dataSource.length,pageSize: 10,current: 1export default getMonitorList;3.3.6 新建一个真实请求数据返回新建service文件:srcservicestrans.jsimport stringify from qs;import request from ./utils/request;/* 获取主机列表数据* param * params */这里定义的方法是由model调用的export async function getMonitorList(params) co
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农业技术创新驱动特色农业产业融合路径研究-洞察阐释
- 2025年中国吸尘纸行业市场规模及投资前景预测分析报告
- 2025年中国轻混合动力车行业市场全景评估及投资策略咨询报告
- 2025年中国蜜桃乌龙茶行业市场调查研究及发展战略规划报告
- 中国猫咪台灯行业市场发展前景及发展趋势与投资战略研究报告(2024-2030)
- 中国人造革鞋行业市场发展前景及发展趋势与投资战略研究报告(2024-2030)
- 2025至2030中国酒类电商行业产业运行态势及投资规划深度研究报告
- 2025至2030中国热轧钢板行业市场运行态势分析及发展前景与投资报告
- 2025至2030中国滚筒筛机行业发展趋势分析与未来投资战略咨询研究报告
- 2025至2030中国混凝土建筑材料行业发展趋势分析与未来投资战略咨询研究报告
- 餐饮连锁企业品牌授权与经营管理协议
- 北京市2024年高招本科普通批录取投档线
- DB32-T 5088-2025 废活性炭综合利用污染控制技术规范
- 2024-2025学年人教版数学八年级下册期末复习卷(含解析)
- 城市通信基站建设对周边居民影响风险评估报告
- 美容院洗涤协议书
- 学习解读《水利水电建设工程验收规程》SLT223-2025课件
- 2025-2030中国婚介网站行业发展趋势与投资战略研究报告
- 肥胖症诊疗指南(2024年版)解读
- 2025甘肃省农垦集团有限责任公司招聘生产技术人员145人笔试参考题库附带答案详解
- 2025届芜湖市重点中学七年级生物第二学期期末学业水平测试模拟试题含解析
评论
0/150
提交评论