diff --git a/src/routes/solid-router/reference/data-apis/data.json b/src/routes/solid-router/reference/data-apis/data.json index 4db544bd08..c66a81d6a0 100644 --- a/src/routes/solid-router/reference/data-apis/data.json +++ b/src/routes/solid-router/reference/data-apis/data.json @@ -6,6 +6,7 @@ "create-async.mdx", "create-async-store.mdx", "query.mdx", + "use-action.mdx", "use-submission.mdx", "use-submissions.mdx" ] diff --git a/src/routes/solid-router/reference/data-apis/use-action.mdx b/src/routes/solid-router/reference/data-apis/use-action.mdx new file mode 100644 index 0000000000..a35b350582 --- /dev/null +++ b/src/routes/solid-router/reference/data-apis/use-action.mdx @@ -0,0 +1,28 @@ +--- +title: useAction +--- + +`useAction` allows an [`action`](/solid-router/reference/data-apis/action) to be invoked programmatically. + +```tsx +import { useAction } from "@solidjs/router"; +import { updateNameAction } from "./actions"; + +const updateName = useAction(updateNameAction); + +const result = updateName("John Wick"); +``` + + + `useAction` requires client-side JavaScript and is not progressively + enhanceable. + + +## Parameters + +- `action`: The action to be invoked. + +## Returns + +`useAction` returns a function that invokes the action. +It shares the same signature as the action itself.