location.watchHeading
Calls callback as the device turns, until remove(). Rejects without a compass.
Utilisation
Observe compass readings and stop when the screen unmounts.
// 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>;
}Signatures
(callback: (heading: LocationHeading) => void): Promise<EventSubscription>Paramètres
| Nom | Type | Requis | Description |
|---|---|---|---|
callback | (heading: LocationHeading) => void | Oui | — |
Retourne
Promise<EventSubscription>
Généré depuis les déclarations TypeScript publiques : signatures, props et valeurs par défaut viennent de la source vérifiée, les descriptions de sa JSDoc. Aucune valeur par défaut n'est inventée.