Commit d57c1687 by zhaochengxiang

修复模型bug

parent 48189180
......@@ -13,12 +13,14 @@ const AssetModal = (props)=>{
if(visible){
reset()
}
//eslint-disable-next-line react-hooks/exhaustive-deps
},[visible])
useEffect(()=>{
if(attrBox2){
reset()
}
}
//eslint-disable-next-line react-hooks/exhaustive-deps
},[attrBox2])
const handleOk =async()=>{
......
......@@ -33,17 +33,21 @@ const AssetTable = (props) =>{
useEffect(()=>{
getListBasicAttrs()
//eslint-disable-next-line react-hooks/exhaustive-deps
},[])
useEffect(()=>{
if(nodeId)
setPageNumber({...pageNumber,page:1,rebuild:new Date().getTime()})
//eslint-disable-next-line react-hooks/exhaustive-deps
},[nodeId])
useEffect(()=>{
if(nodeId&&rebuild!==0)
getTable()
//eslint-disable-next-line react-hooks/exhaustive-deps
},[rebuild])
......
......@@ -26,6 +26,8 @@ const LeftTree = (props)=>{
useEffect(()=>{
getTree()
//eslint-disable-next-line react-hooks/exhaustive-deps
},[treeRebuild.build])//获取树数据
const openTree=(expandedKeys)=>{
......
......@@ -14,6 +14,8 @@ const ThemeFile = (props)=>{
if(fileVisible){
form.resetFields()
}
//eslint-disable-next-line react-hooks/exhaustive-deps
},[fileVisible])
const normFile = (e) => {
......
......@@ -13,6 +13,8 @@ const TreeModal = (props)=>{
if(visible){
reset()
}
//eslint-disable-next-line react-hooks/exhaustive-deps
},[visible])
const handleOk =async()=>{
......
import React, { useState, useCallback, useRef, useEffect } from 'react';
import { Table, Input, InputNumber, Form, Typography, Radio, Divider, Button, Popconfirm, Select, Row, Col, Popover } from 'antd';
import { Table, Input, Form, Typography, Radio, Divider, Button, Popconfirm, Select, Row, Col, Popover } from 'antd';
import { DndProvider, useDrag, useDrop } from 'react-dnd';
import { HTML5Backend } from 'react-dnd-html5-backend';
import update from 'immutability-helper';
......@@ -15,18 +15,7 @@ const type = 'DragableTableBodyRow';
const DatatypeInput = ({ value = {}, datatypes, onChange }) => {
const [ name, setName ] = useState(value.name||'');
const [ parameterCnNames, setParameterCnNames ] = useState(value.parameterCnNames||[]);
const [ parameterValues, setParameterValues ] = useState(value.parameterValues||[]);
useEffect(() => {
setName(value.name||'');
setParameterValues(value.parameterValues||[]);
setParameterCnNames(value.parameterCnNames||[]);
}, [ value ])
const onNameChange = (value) => {
setName(value);
let currentDatatype = {};
(datatypes||[]).forEach((datatype, index) => {
......@@ -35,9 +24,6 @@ const DatatypeInput = ({ value = {}, datatypes, onChange }) => {
}
})
setParameterCnNames(currentDatatype.parameterCnNames);
setParameterValues(currentDatatype.parameterValues);
triggerChange({
name: value,
cnName: currentDatatype.cnName,
......@@ -47,14 +33,17 @@ const DatatypeInput = ({ value = {}, datatypes, onChange }) => {
});
}
const onParameterValuesChange = (value, index) => {
const onParameterValuesChange = (e, index) => {
const newParameterValues = [...parameterValues];
const parameterValue = e.target.value;
const reg = /^-?\d*(\.\d*)?$/;
if ((!isNaN(parameterValue) && reg.test(parameterValue)) || parameterValue === '') {
const newParameterValues = [...(value.parameterValues||[])];
//默认为0
newParameterValues[index] = value||0;
setParameterValues(newParameterValues);
triggerChange({ parameterValues: newParameterValues });
//默认为0
newParameterValues[index] = parameterValue||0;
triggerChange({ parameterValues: newParameterValues });
}
}
const triggerChange = (changedValue) => {
......@@ -73,7 +62,7 @@ const DatatypeInput = ({ value = {}, datatypes, onChange }) => {
<Col span={12}>
<Select
onChange={onNameChange}
value={name}
value={value.name || ''}
placeholder='请选择类型名称'
>
{
......@@ -87,21 +76,21 @@ const DatatypeInput = ({ value = {}, datatypes, onChange }) => {
</Col>
</Row>
{
(parameterCnNames||[]).map((parameterCnName, index) => {
(value.parameterCnNames||[]).map((parameterCnName, index) => {
//使用InputNumber:当value改变时 InputNumber显示值没改变 但实际值有改变 是ant design的bug 这里使用只能输入数字的Input
return (
<Row key={index} className='mt-2' align='middle'>
<Col span={12}>
<span>{`${parameterCnName||''}:`}</span>
</Col>
<Col span={12}>
<InputNumber
onChange={(value) => {
onParameterValuesChange(value, index);
<Input
onChange={(e) => {
onParameterValuesChange(e, index);
}}
min={0}
value={parameterValues[index]}
value={value.parameterValues[index] || 0 }
style={{ width: '100%' }}
placeholder='请输入一个整数'
/>
</Col>
</Row>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment