API.md

@lazarv/react-server/client

この API リファレンスはまだ翻訳されていません。以下は英語版の内容です。

Client-side runtime helpers. Exposes the client and outlet contexts used by navigation, refresh, and prefetching, plus the ClientOnly component for code that must only run after hydration.

function ClientOnly(props: React.PropsWithChildren): React.JSX.Element;

A component that renders its children only on the client after hydration.

Parameters

Returns — The component

import { ClientOnly } from '@lazarv/react-server/client'; export default function App() { return ( <ClientOnly> <h1>Client-only content</h1> </ClientOnly> ); }

A hook that returns the client context.

Returns — The client context

A hook that returns the outlet context.

Returns — The outlet context

type ReactServerClientContext = { registerOutlet(outlet: string, url: string): void; refresh(outlet?: string, options?: { signal?: AbortSignal; fallback?: React.ReactNode; Component?: React.ReactNode; }): Promise<void>; prefetch(url: string, options?: { outlet?: string; ttl?: number; signal?: AbortSignal; }): Promise<void>; navigate(url: string, options?: { outlet?: string; push?: boolean; rollback?: number; signal?: AbortSignal; fallback?: React.ReactNode; Component?: React.ReactNode; }): Promise<void>; replace(url: string, options?: { outlet?: string; rollback?: number; signal?: AbortSignal; fallback?: React.ReactNode; Component?: React.ReactNode; }): Promise<void>; abort(outlet?: string, reason?: unknown): void; subscribe(url: string, listener: (to: string, done?: (err: unknown | null, result: unknown) => void) => void): () => void; getFlightResponse(url: string, options?: { outlet?: string; }): Promise<React.ReactNode | null>; };

The client context.

type ReactServerOutletContext = { refresh: (options?: Parameters<ReactServerClientContext["refresh"]>[1]) => Promise<void>; prefetch: (url: string, options?: Parameters<ReactServerClientContext["prefetch"]>[1]) => Promise<void>; navigate: (to: string, options?: Parameters<ReactServerClientContext["navigate"]>[1]) => Promise<void>; replace: (to: string, options?: Parameters<ReactServerClientContext["replace"]>[1]) => Promise<void>; abort: (reason?: string) => void; };

The outlet context.