Usage

Reload and scroll an embedded page.

tsx
// Reload and scroll an embedded page.
import { Button, WebView, ref, type WebViewHandle } from 'kuito';

function Article() {
  const page = ref<WebViewHandle>();

  return (
    <>
      <WebView ref={page} src="https://example.com/article" flex={1} />
      <Button onPress={() => void page.current?.injectJavaScript('window.scrollTo(0, 0)')}>
        Top
      </Button>
      <Button onPress={() => void page.current?.reload()}>Reload</Button>
    </>
  );
}

Type declaration

ts
export type WebViewHandle = NativeViewHandle<WebViewMethods>;

Members 15

NameTypeRequiredDescription
idreadonlystringYes—
parentreadonlyElementHandleYes—
childrenreadonlyElementHandle[]Yes—
focus() => voidYes—
blur() => voidYes—
setProperty<K extends keyof ElementProperties>(key: K, value: ElementProperties[K] | null) => voidYesSets a native prop on the view now, until its binding writes it again.
addEventListener(type: string, fn: (e: KuitoNativeEvent) => void, options?: boolean | { capture?: boolean; once?: boolean; signal?: AbortSignal;}) => voidYes—
removeEventListener(type: string, fn: (e: KuitoNativeEvent) => void, options?: boolean | { capture?: boolean;}) => voidYes—
dispatchEvent(event: { type: string; bubbles?: boolean; cancelable?: boolean;}) => booleanYesSends an event through the tree, capture to bubble, as a native one travels: a KuitoCustomEvent, or any object with a type. False when a listener called preventDefault() on a cancelable event.
goBack() => Promise<void>Yes—
goForward() => Promise<void>Yes—
reload() => Promise<void>Yes—
stop() => Promise<void>Yes—
injectJavaScript(script: string) => Promise<void>YesRuns script in the main frame; its result and errors stay in the page.
postMessage(data: string) => Promise<void>YesDispatches a message event on the page's window, with data as event.data.
focus — method signatures

Signatures

ts
(): void

Parameters

No parameters.

Returns

void

blur — method signatures

Signatures

ts
(): void

Parameters

No parameters.

Returns

void

setProperty — method signatures

Signatures

ts
<K extends keyof ElementProperties>(key: K, value: ElementProperties[K] | null): void

Type parameters

NameConstraintDefault
Kkeyof ElementProperties—

Parameters

NameTypeRequiredDescription
keyKYes—
valueElementProperties[K]Yes—

Returns

void

addEventListener — method signatures

Signatures

ts
(type: string, fn: (e: KuitoNativeEvent) => void, options?: boolean | { capture?: boolean; once?: boolean; signal?: AbortSignal; }): void

Parameters

NameTypeRequiredDescription
typestringYes—
fn(e: KuitoNativeEvent) => voidYes—
optionsboolean | { capture?: boolean; once?: boolean; signal?: AbortSignal;}No—

Returns

void

removeEventListener — method signatures

Signatures

ts
(type: string, fn: (e: KuitoNativeEvent) => void, options?: boolean | { capture?: boolean; }): void

Parameters

NameTypeRequiredDescription
typestringYes—
fn(e: KuitoNativeEvent) => voidYes—
optionsboolean | { capture?: boolean;}No—

Returns

void

dispatchEvent — method signatures

Signatures

ts
(event: { type: string; bubbles?: boolean; cancelable?: boolean; }): boolean

Parameters

NameTypeRequiredDescription
event{ type: string; bubbles?: boolean; cancelable?: boolean;}Yes—

Returns

boolean

goBack — method signatures

Signatures

ts
(): Promise<void>

Parameters

No parameters.

Returns

Promise<void>

goForward — method signatures

Signatures

ts
(): Promise<void>

Parameters

No parameters.

Returns

Promise<void>

reload — method signatures

Signatures

ts
(): Promise<void>

Parameters

No parameters.

Returns

Promise<void>

stop — method signatures

Signatures

ts
(): Promise<void>

Parameters

No parameters.

Returns

Promise<void>

injectJavaScript — method signatures

Signatures

ts
(script: string): Promise<void>

Parameters

NameTypeRequiredDescription
scriptstringYes—

Returns

Promise<void>

postMessage — method signatures

Signatures

ts
(data: string): Promise<void>

Parameters

NameTypeRequiredDescription
datastringYes—

Returns

Promise<void>

Generated from the public TypeScript declarations: signatures, props and defaults come from the checked source, descriptions from its JSDoc. No defaults are invented.