4.x hitTest issue

991
2
Jump to solution
03-22-2018 05:53 PM
JeremyLuymes
New Contributor III

Getting a weird error every once in a while for a hitTest function (still using 4.4 to avoid another bug but it happens in 4.6 as well).

EDIT: confirmed in Esri samples this a bug with the hitTest function. This seems to be fixed if i test in 4.7.

    view.then(() => {
      view.whenLayerView(nbhdLyr).then(function(lview2){
        watchUtils.whenFalse(lview2,"updating",function(){
          view.on("pointer-move",eventHandler2);
          function eventHandler2(event) {
            view.hitTest(event).then(getGraphics2);
          }
        });
      });
    });‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

It then passes to a function that sends attributes to a popup

    function getGraphics2(response2) {
      if (response2.results.length) {
        var graphic = response2.results.filter(function(result2) {
          return result2.graphic.layer === nbhdLyr;
        })[0].graphic;
        var attributes = graphic.attributes;
        var nbdattr = attributes.NEIGHBOURHOOD;
        var poattr = attributes.PREORDERS;
        var cusattr = attributes.CUSTOMERS;
        var intattr = attributes.INTERESTLEVEL;
        var mrkattr = attributes.MARKETPEN;
        var addrattr = attributes.PROPERTIES;
        var pconvattr = attributes.POCONV;
        document.getElementById("info").style.visibility = "visible";
        document.getElementById("nbhd").innerHTML = nbdattr;
        document.getElementById("preorders").innerHTML = " <b>" + poattr + "</b> preorders";
        document.getElementById("customers").innerHTML = " <b>" + cusattr + "</b> customers";
        document.getElementById("interest").innerHTML = " <b>" + intattr + "%</b> total interest";
        document.getElementById("marketpen").innerHTML = " <b>" + mrkattr + "%</b> market penetration";
        document.getElementById("address").innerHTML = " <b>" + addrattr + "</b> addresses";
        document.getElementById("poconv").innerHTML = " <b>" + pconvattr + "%</b> preorders converted";
      }
    }‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

This will sometimes give an error on the hitTest function, saying:

Uncaught TypeError: Failed to execute 'elementFromPoint' on 'Document': The provided double value is non-finite.

Image is also attached. I'm not sure what's causing this or how to get around it, anyone see this issue or have any thoughts?

0 Kudos
1 Solution

Accepted Solutions
JeremyLuymes
New Contributor III

I was able to replicate this error in an Esri sample: ArcGIS API for JavaScript Sandbox 

So i guess it must be a bug with the hitTest function.

View solution in original post

0 Kudos
2 Replies
JeremyLuymes
New Contributor III

To add more context to this, it seems it's only happening when i'm near the left border of my map. Very strange.

0 Kudos
JeremyLuymes
New Contributor III

I was able to replicate this error in an Esri sample: ArcGIS API for JavaScript Sandbox 

So i guess it must be a bug with the hitTest function.

0 Kudos