Usage

Observe compass readings and stop when the screen unmounts.

This type is used by location.watchHeading

tsx
// Observe compass readings and stop when the screen unmounts.
import { Text, onMount, signal, location, type EventSubscription } from 'kuito';

export function Compass() {
  const heading = signal('Waiting for compass');
  onMount(() => {
    let disposed = false;
    let subscription: EventSubscription | undefined;
    void location
      .watchHeading((value) => {
        heading.value = JSON.stringify(value);
      })
      .then((value) => {
        if (disposed) value.remove();
        else subscription = value;
      })
      .catch((error) => {
        heading.value = String(error);
      });
    return () => {
      disposed = true;
      subscription?.remove();
    };
  });
  return <Text>{heading.value}</Text>;
}

Type declaration

ts
export type LocationHeading = Heading;

Members 3

NameTypeRequiredDescription
trueHeadingnumberYesDegrees from true north; null until the platform knows where the device is.
magHeadingnumberYesDegrees from magnetic north.
accuracynumberYesiOS: the error in degrees. Android: the compass's calibration, 0 (none) to 3 (high).
Generated from the public TypeScript declarations: signatures, props and defaults come from the checked source, descriptions from its JSDoc. No defaults are invented.