修正arraysetter 排序写入schema的问题

This commit is contained in:
zude.hzd 2020-08-09 23:25:10 +08:00
parent 9fa5b91400
commit eb525ad15a

View File

@ -72,11 +72,18 @@ export class ListSetter extends Component<ArraySetterProps, ArraySetterState> {
onSort(sortedIds: Array<string | number>) { onSort(sortedIds: Array<string | number>) {
const { itemsMap } = this.state; const { itemsMap } = this.state;
const { onChange } = this.props;
const items = sortedIds.map((id, index) => { const items = sortedIds.map((id, index) => {
const item = itemsMap.get(id)!; const item = itemsMap.get(id)!;
item.setKey(index); // item.setKey(index);
return item; return item;
}); });
const values = items.map((item) => {
return item.getValue();
});
console.log('values',values);
onChange(values);
this.setState({ this.setState({
items, items,
}); });
@ -253,6 +260,7 @@ export default class ArraySetter extends Component<{
} }
if (mode === 'popup' || forceInline) { if (mode === 'popup' || forceInline) {
const title = ( const title = (
<Fragment> <Fragment>
@ -270,6 +278,7 @@ export default class ArraySetter extends Component<{
} }
this.pipe = (this.context as PopupPipe).create({ width }); this.pipe = (this.context as PopupPipe).create({ width });
} }
this.pipe.send(<TableSetter key={field.id} {...props} columns={columns} />, title); this.pipe.send(<TableSetter key={field.id} {...props} columns={columns} />, title);
return ( return (
<Button <Button