tachybase_todo/packages/client/src/schemas/table/hooks/useTableUpdateAction.ts
chenos c1b560e928
feat: rename resourceKey & associatedKey to resourceIndex & associatedIndex (#126)
* resourceIndex & associatedIndex

* resourceIndex & associatedIndex
2021-12-04 16:28:52 +08:00

36 lines
899 B
TypeScript

import { useForm } from '@formily/react';
import { useContext } from 'react';
import { useTable } from './useTable';
import { TableRowContext } from '../context';
import { DescriptionsContext } from '../../form';
export const useTableUpdateAction = () => {
const {
resource,
field,
service,
refresh,
props: { refreshRequestOnChange, rowKey },
} = useTable();
const ctx = useContext(TableRowContext);
const form = useForm();
const { service: formService } = useContext(DescriptionsContext);
return {
async run() {
if (refreshRequestOnChange) {
await resource.save(form.values, {
resourceIndex: ctx.record[rowKey],
});
if (formService) {
await formService.refresh();
}
await service.refresh();
return;
}
field.value[ctx.index] = form.values;
// refresh();
},
};
};