XR8.Vps.makeWayspotWatcher()
XR8.Vps.makeWayspotWatcher({onVisible, onHidden, pollGps, lat, lng})
Description
Créer un observateur pour rechercher tous les emplacements activés par le SPV, et pas seulement les emplacements de projet.
Paramètres
| Paramètres | Description | 
|---|---|
| onVisible [Facultatif] | Rappel appelé lorsqu'un nouvel emplacement devient visible dans un rayon de 1000 mètres. | 
| onHidden [Facultatif] | Rappel qui est appelé lorsqu'un lieu que vous avez vu précédemment n'est plus dans un rayon de 1000 mètres autour de vous. | 
| pollGps [Facultatif] | Si true, active le GPS et appelle les callbacks 'onVisible' et 'onHidden' avec tous les emplacements trouvés/perdus grâce au mouvement GPS. | 
| lat [Facultatif] | Si latoulngest défini, appelle les callbacksonVisibleetonHiddenavec tous les emplacements trouvés/perdus à proximité de l'emplacement défini. | 
| lng [Facultatif] | Si latoulngest défini, appelle les callbacksonVisibleetonHiddenavec tous les emplacements trouvés/perdus à proximité de l'emplacement défini. | 
Retourne
Un objet avec les méthodes suivantes :
{dispose(), pollGps(), setLatLng()}
| Méthode | Description | 
|---|---|
| disposer() | Efface l'état et arrête le GPS. est mis à jour et n'appellera plus de callbacks. | 
| pollGps(Booléen) | Activer ou désactiver les mises à jour du GPS. | 
| setLatLng(lat : Nombre, lng : Nombre) | Fixe la position actuelle de l'observateur à lat/lng. | 
Exemple
const nearbyLocations_ = []
// Enregistre le temps qui s'écoule entre l'obtention de chaque emplacement auprès du waypotWatcher.
let gotAllLocationsTimeout_ = 0
const onLocationVisible = (emplacement) => {
 nearbyLocations_.push(emplacement)
 window.clearTimeout(gotAllLocationsTimeout_)
 gotAllLocationsTimeout_ = window.setTimeout(() => {
   // Nous obtenons les emplacements de manière individuelle.  Si nous voulons effectuer une opération
   // seulement après avoir obtenu tous les emplacements proches, nous pouvons le faire ici.
 }, 0)
}
const onLocationHidden = (location) => {
 const index = nearbyLocations_.indexOf(location)
 if (index > -1) {
   foundProjectLocations_.splice(index, 1)
 }
}
const onAttach = ({}) => {
 wayspotWatcher_ = XR8.Vps.makeWayspotWatcher(
   {onVisible: onLocationVisible, onHidden: onLocationHidden, pollGps: true}
 )
}
const onDetach = ({}) => {
  // Nettoyer le watcher
 wayspotWatcher_.dispose()
}