diff --git a/src/components/Tree.tsx b/src/components/Tree.tsx index 4e538c3d..1c638f92 100644 --- a/src/components/Tree.tsx +++ b/src/components/Tree.tsx @@ -331,7 +331,6 @@ export class TreeSelector extends React.Component any; onReset?: (values:object) => void; onSubmit?: (values:object, action:any) => any; @@ -487,10 +488,10 @@ export default class Form extends React.Component { env, onChange, clearPersistDataAfterSubmit, - trim + trimValues } = this.props; - if (trim) { + if (trimValues) { store.trimValues(); } diff --git a/src/store/formItem.ts b/src/store/formItem.ts index fa94e869..c23945f6 100644 --- a/src/store/formItem.ts +++ b/src/store/formItem.ts @@ -493,7 +493,7 @@ export const FormItemStore = types } function trimValue() { - let value = iterateChildren(self.value, (item:any) => typeof item === 'string' && item.trim()); + let value = iterateChildren(self.value, (item:any) => typeof item === 'string' ? item.trim() : item); value && changeValue(value, false); } diff --git a/src/utils/helper.ts b/src/utils/helper.ts index 9223777a..4506082d 100644 --- a/src/utils/helper.ts +++ b/src/utils/helper.ts @@ -731,7 +731,7 @@ export function iterateChildren(value: any, fn: Function): any { return value.map(item => iterateChildren(item, fn)); } if (isObject(value)) { - let tmpValue = Object.assign({}, value); + let tmpValue = {...value}; Object.keys(tmpValue).forEach(key => { (tmpValue as PlainObject)[key] = iterateChildren((tmpValue as PlainObject)[key], fn); });