import React from 'react' import { Button, Form, Row, Col, Input, InputNumber, Select, Icon, Menu, Dropdown, Divider, Upload, message } from 'antd' const FormItem = Form.Item const SelectOption = Select.Option const OptionGroup = Select.OptGroup const InputGroup = Input.Group const SubMenu = Menu.SubMenu const MenuItem = Menu.Item const MenuItemGroup = Menu.ItemGroup const UploadDragger = Upload.Dragger import { connect } from 'dva' import dataSource from '../../models/dataSource' import dataConnect from '../../models/dataConnect' const DataSourceBaseConfig = ({ dataSource, dataConnect, dispatch }) => { const formItemLayout = { labelCol: { span: 4 }, wrapperCol: { span: 20 }, }; const dataSourceLinkMenu = ( { const model = dataConnect.list[e.key]; dispatch({ type: 'dataSource/setNewModelFields', fields: [ { name: 'address', value: model.address }, { name: 'port', value: model.port }, { name: 'dbType', value: model.dbType }, { name: 'dbName', value: model.dbName }, { name: 'userName', value: model.userName }, { name: 'password', value: model.password } ] }); }} > { dataConnect.list.map((l, i) => { return {l.name} }) } ); return (
基本配置 { dispatch({ type: 'dataSource/setNewModelField', name: 'name', value: e.target.value }) }}> { dataSource.newOne.type=='file'?(
选择文件 { const trueType = file.type === 'application/vnd.ms-excel'; if (!trueType) { message.error('选择文件格式错误!'); } const trueSize = file.size / 1024 / 1024 < 30; if (!trueSize) { message.error('选择文件过大!'); } return trueType && trueSize; }} onChange={(info) => { const file = info.file; let fileList = info.fileList; fileList = fileList.slice(-1); // 只保留最后一个 if (info.file.status !== 'uploading') { console.log(file, info.fileList); const trueType = file.type === 'application/vnd.ms-excel'; const trueSize = file.size / 1024 / 1024 < 30; if(!trueType || !trueSize) { fileList = []; } } if (file.status === 'done') { message.success(`${file.name} 文件上传成功`); } else if (file.status === 'error') { fileList = []; message.error(`${file.name} 文件上传失败.`); } dispatch({ type: 'dataSource/setNewModelField', name: 'fileList', value: fileList }) }} >

点击选择或拖动文件到该区域

仅支持上传单个30MB以内EXCEL/CSV格式文件

):(
连接配置
使用已存在的数据连接
{ dispatch({ type: 'dataSource/setNewModelField', name: 'address', value: e.target.value }); }} /> { dispatch({ type: 'dataSource/setNewModelField', name: 'port', value: value }); }} /> { dispatch({ type: 'dataSource/setNewModelField', name: 'dbName', value: e.target.value }); }} /> { dispatch({ type: 'dataSource/setNewModelField', name: 'userName', value: e.target.value }); }} /> { let value = e.target.value; dispatch({ type: 'dataSource/setNewModelField', name: 'password', value: value }); e.target.removeAttribute('value') }} />
) } 其他配置 { dispatch({ type: 'dataSource/setNewModelField', name: 'description', value: e.target.value }); }} />
); } function mapStateToProps({ present: {dataSource, dataConnect} }) { return { dataSource, dataConnect } } export default connect(mapStateToProps)(DataSourceBaseConfig);