From 063b983daaf51a7f1e8677bde1e9c0e618866c91 Mon Sep 17 00:00:00 2001 From: king <18310653075@163.com> Date: 星期五, 21 二月 2020 10:30:19 +0800 Subject: [PATCH] 2020-02-21 --- src/tabviews/formtab/formgroup/index.jsx | 24 ++++++++++++++++++++++++ 1 files changed, 24 insertions(+), 0 deletions(-) diff --git a/src/tabviews/formtab/formgroup/index.jsx b/src/tabviews/formtab/formgroup/index.jsx index 8e623f7..20dce01 100644 --- a/src/tabviews/formtab/formgroup/index.jsx +++ b/src/tabviews/formtab/formgroup/index.jsx @@ -1,5 +1,6 @@ import React, {Component} from 'react' import PropTypes from 'prop-types' +import { is, fromJS } from 'immutable' import { Form, Row, Col, Input, InputNumber, Select, DatePicker, notification, Collapse } from 'antd' import moment from 'moment' import { formRule } from '@/utils/option.js' @@ -31,6 +32,29 @@ record: {} } + UNSAFE_componentWillReceiveProps (nextProps) { + if (nextProps.data && !is(fromJS(this.props.data), fromJS(nextProps.data))) { + + let _fieldsvalue = {} + let _record = {} + Object.keys(nextProps.data).forEach(key => { + if (this.props.form.getFieldValue(key) !== undefined) { + _fieldsvalue[key] = nextProps.data[key] + } else { + _record[key] = nextProps.data[key] + } + }) + + if (Object.keys(_fieldsvalue).length > 0) { + this.props.form.setFieldsValue(_fieldsvalue) + } + + this.setState({ + record: _record + }) + } + } + UNSAFE_componentWillMount () { const { data, groups } = this.props -- Gitblit v1.8.0