useSaveContext
useSaveContext
grabs the save
callback prepared either by useEditController
or useCreateController
. It is used by <Form>
to provide a default submit handler.
import { useSaveContext } from 'ra-core';
const { save, saving, mutationMode } = useSaveContext();
You can create a custom SaveContext
to override the default save
callback:
import { SaveContextProvider } from 'ra-core';
const MyComponent = () => { const save = data => { console.log(data); } const saving = false; const mutationMode = "pessimistic"; return ( <SaveContextProvider value={{ save, saving, mutationMode }}> <MyForm /> </SaveContextProvider> );}
Return Value
Section titled “Return Value”useSaveContext
returns an object with the following keys:
const { save, // Create or update callback which receives form data and calls dataProvider saving, // Boolean, true when dataProvider is called mutationMode, // Current mutation mode, either 'undoable', 'optimistic' or 'pessimistic'} = useSaveContext();