Verwendung

Handle event propagation and cancellation.

tsx
// Handle event propagation and cancellation.
import { Box, Button, onMount, ref, signal, type KuitoNativeEvent } from 'kuito';

const saving = signal(false);

function Form(props: { onSave: () => void }) {
  const form = ref();

  // In the capture phase the form sees a press before the button inside it does,
  // and stops it while a save is running.
  const guard = (event: KuitoNativeEvent) => {
    if (saving.value) event.stopPropagation();
  };

  onMount(() => form.current?.addEventListener('press', guard, { capture: true }));

  return (
    <Box ref={form}>
      <Button onPress={props.onSave}>Save</Button>
    </Box>
  );
}

Typdeklaration

ts
export interface KuitoNativeEvent {
  type: string;
  bubbles: boolean;
  cancelable: boolean;
  readonly isTrusted?: boolean;
  target?: ElementHandle;
  currentTarget?: ElementHandle | null;
  defaultPrevented?: boolean;
  eventPhase?: number;
  stopPropagation(): void;
  stopImmediatePropagation(): void;
  preventDefault(): void;
  composedPath(): ElementHandle[];
}

Mitglieder 12

NameTypErforderlichBeschreibung
typestringJa—
bubblesbooleanJa—
cancelablebooleanJa—
isTrustedschreibgeschütztbooleanNein—
targetElementHandleNein—
currentTargetElementHandleNein—
defaultPreventedbooleanNein—
eventPhasenumberNein—
stopPropagation() => voidJa—
stopImmediatePropagation() => voidJa—
preventDefault() => voidJa—
composedPath() => ElementHandle[]Ja—
stopPropagation — Methodensignaturen

Signaturen

ts
(): void

Parameter

Keine Parameter.

Rückgabe

void

stopImmediatePropagation — Methodensignaturen

Signaturen

ts
(): void

Parameter

Keine Parameter.

Rückgabe

void

preventDefault — Methodensignaturen

Signaturen

ts
(): void

Parameter

Keine Parameter.

Rückgabe

void

composedPath — Methodensignaturen

Signaturen

ts
(): ElementHandle[]

Parameter

Keine Parameter.

Rückgabe

ElementHandle[]

Generiert aus den öffentlichen TypeScript-Deklarationen: Signaturen, Props und Standardwerte stammen aus der geprüften Quelle, Beschreibungen aus deren JSDoc. Kein Standardwert ist erfunden.