Commit bf6fc648 authored by XieZhiXiong's avatar XieZhiXiong

fix: 修复第一次点击编辑地址时,市级区级回填不了的问题;修复新增或修改成功表单数据没有清空的问题

parent 5e4578d9
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* @Author: XieZhiXiong * @Author: XieZhiXiong
* @Date: 2021-08-05 10:28:06 * @Date: 2021-08-05 10:28:06
* @LastEditors: XieZhiXiong * @LastEditors: XieZhiXiong
* @LastEditTime: 2021-08-26 18:16:30 * @LastEditTime: 2021-09-03 19:17:17
* @Description: 地址选择 FormItem * @Description: 地址选择 FormItem
*/ */
import React, { useState, useEffect, useMemo, useRef } from 'react'; import React, { useState, useEffect, useMemo, useRef } from 'react';
...@@ -277,9 +277,11 @@ const AddressSelect: React.FC<IProps> = (props) => { ...@@ -277,9 +277,11 @@ const AddressSelect: React.FC<IProps> = (props) => {
getAddressList(); getAddressList();
formActions.reset({ selector: 'ADDRESS_NEW.*', validate: false }); formActions.reset({ selector: 'ADDRESS_NEW.*', validate: false });
formActions.setFieldState('ADDRESS_NEW', state => { setTimeout(() => {
state.visible = false; formActions.setFieldState('ADDRESS_NEW', state => {
}); state.visible = false;
});
}, 0);
formActions.setFieldState('ADD_ACTION', state => { formActions.setFieldState('ADD_ACTION', state => {
state.props['x-component-props'] = { state.props['x-component-props'] = {
...@@ -323,9 +325,11 @@ const AddressSelect: React.FC<IProps> = (props) => { ...@@ -323,9 +325,11 @@ const AddressSelect: React.FC<IProps> = (props) => {
editAddressId.current = null; editAddressId.current = null;
formActions.reset({ selector: 'ADDRESS_NEW.*', validate: false }); formActions.reset({ selector: 'ADDRESS_NEW.*', validate: false });
formActions.setFieldState('ADDRESS_NEW', state => { setTimeout(() => {
state.visible = false; formActions.setFieldState('ADDRESS_NEW', state => {
}); state.visible = false;
});
}, 0);
formActions.setFieldState('ADD_ACTION', state => { formActions.setFieldState('ADD_ACTION', state => {
state.props['x-component-props'] = { state.props['x-component-props'] = {
...@@ -440,9 +444,15 @@ const AddressSelect: React.FC<IProps> = (props) => { ...@@ -440,9 +444,15 @@ const AddressSelect: React.FC<IProps> = (props) => {
const res = addressType === 2 ? await PublicApi.getLogisticsShipperAddressGet({ id: `${id}` }) : await PublicApi.getLogisticsReceiverAddressGet({ id: `${id}` }); const res = addressType === 2 ? await PublicApi.getLogisticsShipperAddressGet({ id: `${id}` }) : await PublicApi.getLogisticsReceiverAddressGet({ id: `${id}` });
if (res.code === 1000) { if (res.code === 1000) {
formActions.setFieldValue('name', addressType === 2 ? (res.data as GetLogisticsShipperAddressGetResponse).shipperName : (res.data as GetLogisticsReceiverAddressGetResponse).receiverName); formActions.setFieldValue('name', addressType === 2 ? (res.data as GetLogisticsShipperAddressGetResponse).shipperName : (res.data as GetLogisticsReceiverAddressGetResponse).receiverName);
formActions.setFieldValue('provinceCode', res.data.provinceCode); formActions.setFieldValue('provinceCode', res.data.provinceCode, true);
formActions.setFieldValue('cityCode', res.data.cityCode); // ???
formActions.setFieldValue('districtCode', res.data.districtCode); formActions.setFieldState('provinceCode', (fieldState) => fieldState.modified = false);
formActions.setFieldValue('cityCode', res.data.cityCode, true);
// ???
formActions.setFieldState('cityCode', (fieldState) => fieldState.modified = false);
formActions.setFieldValue('districtCode', res.data.districtCode, true);
// ???
formActions.setFieldState('districtCode', (fieldState) => fieldState.modified = false);
formActions.setFieldValue('detailed', res.data.address); formActions.setFieldValue('detailed', res.data.address);
formActions.setFieldValue('postalCode', res.data.postalCode); formActions.setFieldValue('postalCode', res.data.postalCode);
formActions.setFieldValue('areaCode', res.data.areaCode); formActions.setFieldValue('areaCode', res.data.areaCode);
......
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