Skip to content
Meeko
Type to search the guides and the API reference. Open it from any page with / or Ctrl K; move with the arrow keys and open a result with Enter.
Get started

Contents

On this page

Not translated yet

This page has not been translated into English yet, so it is shown in Spanish.

ClientComponent

interfaz

Forma pública de un módulo .meeko compilado que necesita mountClientApp para renderizar e hidratar páginas y layouts.

ts
import type { ClientComponent } from "@meekojs/meeko/framework";

Source code src/app/runtime/client.ts:63

Declaración #

ts
interface ClientComponent {
	renderWithState(props: Record<string, unknown>): { html: string; state: Record<string, unknown> }
	renderToString(props: Record<string, unknown>, state?: Record<string, unknown>): string
	hydrateScope(scope: DomScope, props: Record<string, unknown>, state?: Record<string, unknown>): () => void
}

Example #

ts
import type { ClientComponent } from "@meekojs/meeko/framework";
import { modules as pages } from "virtual:meeko-client-pages";

async function loadPage(file: string): Promise<ClientComponent> {
  const load = pages[file];
  if (!load) throw new Error(`Page module missing: ${file}`);
  return await load() as ClientComponent;
}

Miembros #

renderWithState #

método

renderWithState(props: Record<string, unknown>): { html: string; state: Record<string, unknown> }

Renderiza el HTML y captura el estado de sus señales.

renderToString #

método

renderToString(props: Record<string, unknown>, state?: Record<string, unknown>): string

Renderiza el HTML, opcionalmente desde un estado capturado.

hydrateScope #

método

hydrateScope(scope: DomScope, props: Record<string, unknown>, state?: Record<string, unknown>): () => void

Hidrata el HTML existente dentro de scope; devuelve la función de liberación.

See also #

Was this page helpful?

Add a comment

It is sent when you choose “Yes” or “No”. Only the page, your answer and the comment are stored: no cookies and no personal data.

0 of 2000 characters

Edit on GitHub: packages/meeko/src/app/runtime/client.ts