smolter
Types

ClientActionArgs

Extends DataArgs with serverAction.

Compatibility

ReactAvailable in this renderer's browser integration.
React SSRAvailable to this renderer's SSR integration; browser event handlers run after hydration.
PreactAvailable in this renderer's browser integration.
Preact SSRAvailable to this renderer's SSR integration; browser event handlers run after hydration.

Import from @kasperrt/smolter/react @kasperrt/smolter/preact @kasperrt/smolter/react/client @kasperrt/smolter/preact/client

Signature

interface ClientActionArgs<A extends AnyDataFunction = DataFunction>
  extends DataArgs {
  serverAction: () => Promise<DataOf<A>>;
}

Usage

Extends DataArgs with serverAction. The transport clones the action request so reading formData in the client handler does not consume the request later sent to the server.

export async function clientAction({ request, serverAction }: ClientActionArgs) {
  const form = await request.formData();
  const result = await serverAction();

  return { result, title: form.get("title") };
}

Fields

serverAction

serverAction: () => Promise<DataOf<A>>;
View implementation ↗