Skip to content

Commit a3a0c7f

Browse files
authored
Merge pull request #1564 from GuidoZam/guidozam-fix-dynamicform-lookup
Fix #1535
2 parents ee52afd + 5fb53c5 commit a3a0c7f

File tree

1 file changed

+16
-11
lines changed

1 file changed

+16
-11
lines changed

src/controls/dynamicForm/dynamicField/DynamicField.tsx

Lines changed: 16 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,7 @@ export class DynamicField extends React.Component<IDynamicFieldProps, IDynamicFi
212212
</div>;
213213

214214
case 'Lookup':
215+
const lookupValue = this.props.newValue ? this.props.newValue : defaultValue;
215216
return <div>
216217
<div className={styles.titleContainer}>
217218
<Icon className={styles.fieldIcon} iconName={"Switch"} />
@@ -220,7 +221,7 @@ export class DynamicField extends React.Component<IDynamicFieldProps, IDynamicFi
220221
<ListItemPicker
221222
disabled={disabled}
222223
listId={lookupListID}
223-
defaultSelectedItems={defaultValue}
224+
defaultSelectedItems={lookupValue}
224225
columnInternalName={lookupField}
225226
className={styles.fieldDisplay}
226227
enableDefaultSuggestions={true}
@@ -234,6 +235,7 @@ export class DynamicField extends React.Component<IDynamicFieldProps, IDynamicFi
234235
</div>;
235236

236237
case 'LookupMulti':
238+
const lookupMultiValue = this.props.newValue ? this.props.newValue : defaultValue;
237239
return <div>
238240
<div className={styles.titleContainer}>
239241
<Icon className={styles.fieldIcon} iconName={"Switch"} />
@@ -242,7 +244,7 @@ export class DynamicField extends React.Component<IDynamicFieldProps, IDynamicFi
242244
<ListItemPicker
243245
disabled={disabled}
244246
listId={lookupListID}
245-
defaultSelectedItems={defaultValue}
247+
defaultSelectedItems={lookupMultiValue}
246248
columnInternalName={lookupField}
247249
className={styles.fieldDisplay}
248250
enableDefaultSuggestions={true}
@@ -596,27 +598,30 @@ export class DynamicField extends React.Component<IDynamicFieldProps, IDynamicFi
596598
const {
597599
changedValue
598600
} = this.state;
601+
599602
try {
600-
let seletedItemArr;
603+
let selectedItemArr;
601604
if (changedValue === null && this.props.fieldDefaultValue !== null) {
602-
seletedItemArr = [];
605+
selectedItemArr = [];
603606
this.props.fieldDefaultValue.forEach(element => {
604-
seletedItemArr.push(element);
607+
selectedItemArr.push(element);
605608
});
606609
}
607610
else
608-
seletedItemArr = !changedValue ? [] : changedValue;
611+
selectedItemArr = !changedValue ? [] : changedValue;
612+
609613
if (item.selected) {
610-
seletedItemArr.push(item.key);
614+
selectedItemArr.push(item.key);
611615
}
612616
else {
613-
const i = seletedItemArr.indexOf(item.key);
617+
const i = selectedItemArr.indexOf(item.key);
614618
if (i >= 0) {
615-
seletedItemArr.splice(i, 1);
619+
selectedItemArr.splice(i, 1);
616620
}
617621
}
618-
this.setState({ changedValue: seletedItemArr });
619-
this.props.onChanged(this.props.columnInternalName, seletedItemArr);
622+
623+
this.setState({ changedValue: selectedItemArr });
624+
this.props.onChanged(this.props.columnInternalName, selectedItemArr);
620625
} catch (error) {
621626
console.log(`Error MultiChoice_selection`, error);
622627
}

0 commit comments

Comments
 (0)