laptop and a wrench

Bogue

The View.popup.open() method fails to display the pop-up when calling the method within the search class event.

Dernière publication: November 11, 2019 ArcGIS API for JavaScript
Numéro d’ID de bogue BUG-000124573
EnvoiAugust 16, 2019
Dernière modificationJune 5, 2024
S’applique àArcGIS API for JavaScript
Version trouvée4.12
Système d’exploitationWindows OS
Version du système d’exploitation10.0
StatutNon-Reproducible

Informations supplémentaires

This issue is fixed in ArcGIS API for JavaScript 4.13 and not reproducible in ArcGIS API for JavaScript 4.14 (Developer Edition).

Solution de contournement

Using a while loop with an iterator to prevent layerview.watch() from firing multiple queries causing the parcel pop-up glitch.

let t = 0;

 searchWidget.on("search-complete", (event) => {

  let resultGeometry = event.results[0].results[0].feature.geometry;

  mapView.whenLayerView(layer).then((layerView) => {

   console.log(layerView)

   layerView.watch("updating", (val) => {

    if (!val) { // wait for the layer view to finish updating

     while(t === 0){

     t++;

     layerView.queryFeatures({

      geometry: resultGeometry,

      returnGeometry: true

     }).then((results) => {

      console.log(results);

      layerView.highlight(results.features);

      console.log('opening popup');

      mapView.popup.open({

       features: [results.features[0]],

       location: results.features[0].geometry.centroid

      })

     });

  }

    }

   });

  });

 });

Étapes pour reproduire

ID de bogue: BUG-000124573

Logiciel:

  • ArcGIS API for JavaScript

Recevoir une notification lorsque le statut d’un bogue change

Télécharger l’application Esri Support

En savoir plus sur ce sujet

Obtenir de l’aide auprès des experts ArcGIS

Contacter le support technique

Télécharger l’application Esri Support

Accéder aux options de téléchargement