<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Cancelling hitTest with controller in ArcGIS JavaScript Maps SDK Questions</title>
    <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/cancelling-hittest-with-controller/m-p/656588#M61267</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi there,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We are updating our webapp to use API version 4.15, and now that dojo promises are no longer around, we need to change over some of our code. With mapView.hitTest, we used to use cancel() to cancel it. I noticed the docs don't have anything about accepting an abort signal in this method. Is this something that is coming soon?&lt;/P&gt;&lt;P&gt;In the meantime, do you have any up to date examples of making hitTest cancellable?&lt;/P&gt;&lt;P&gt;The context we are using it in is updating featureEffect on the layerView based on the results of hitTest.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Alex Dunham&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 01 Jun 2020 23:21:58 GMT</pubDate>
    <dc:creator>Anonymous User</dc:creator>
    <dc:date>2020-06-01T23:21:58Z</dc:date>
    <item>
      <title>Cancelling hitTest with controller</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/cancelling-hittest-with-controller/m-p/656588#M61267</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi there,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;We are updating our webapp to use API version 4.15, and now that dojo promises are no longer around, we need to change over some of our code. With mapView.hitTest, we used to use cancel() to cancel it. I noticed the docs don't have anything about accepting an abort signal in this method. Is this something that is coming soon?&lt;/P&gt;&lt;P&gt;In the meantime, do you have any up to date examples of making hitTest cancellable?&lt;/P&gt;&lt;P&gt;The context we are using it in is updating featureEffect on the layerView based on the results of hitTest.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Alex Dunham&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Jun 2020 23:21:58 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/cancelling-hittest-with-controller/m-p/656588#M61267</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2020-06-01T23:21:58Z</dc:date>
    </item>
    <item>
      <title>Re: Cancelling hitTest with controller</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/cancelling-hittest-with-controller/m-p/656589#M61268</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Have you tried using the PromiseUtils 'debounce' method:&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="link-titled" href="https://jscore.esri.com/javascript/latest/api-reference/esri-core-promiseUtils.html#debounce" title="https://jscore.esri.com/javascript/latest/api-reference/esri-core-promiseUtils.html#debounce"&gt;https://jscore.esri.com/javascript/latest/api-reference/esri-core-promiseUtils.html#debounce&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Jun 2020 00:03:16 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/cancelling-hittest-with-controller/m-p/656589#M61268</guid>
      <dc:creator>JohnGrayson</dc:creator>
      <dc:date>2020-06-02T00:03:16Z</dc:date>
    </item>
    <item>
      <title>Re: Cancelling hitTest with controller</title>
      <link>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/cancelling-hittest-with-controller/m-p/656590#M61269</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes, trying that at the moment. It kind of works, but I noticed when logging event inside hitTest it still calls it many times, and what I want is to make it faster to update the layerView effect by cancelling whatever it is doing inside handleMouseMove when the event is called again.&lt;/P&gt;&lt;P&gt;Example:&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;DIV style="color: #e6e6e6; background-color: #292a2b; font-weight: normal;"&gt;&lt;DIV&gt;&lt;SPAN style="color: #ffb86c;"&gt;const&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ff9ac1;"&gt;debouncedUpdate&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ff9ac1;"&gt;promiseUtils&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;.&lt;/SPAN&gt;&lt;SPAN style="color: #6fc1ff;"&gt;debounce&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;((&lt;/SPAN&gt;&lt;SPAN style="color: #bbbbbb;"&gt;event&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;)&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ffb86c;"&gt;=&amp;gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ff9ac1;"&gt;this&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;.&lt;/SPAN&gt;&lt;SPAN style="color: #6fc1ff;"&gt;handleMouseMove&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;(event)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ffb86c;"&gt;const&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ff9ac1;"&gt;mapViewMouseMoveHandler&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ff9ac1;"&gt;mapView&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;.&lt;/SPAN&gt;&lt;SPAN style="color: #6fc1ff;"&gt;on&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;(&lt;/SPAN&gt;&lt;SPAN style="color: #19f9d8;"&gt;"pointer-move"&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;,&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN style="color: #bbbbbb;"&gt;event&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;)&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ffb86c;"&gt;=&amp;gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #6fc1ff;"&gt;debouncedUpdate&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;(event).&lt;/SPAN&gt;&lt;SPAN style="color: #6fc1ff;"&gt;catch&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;((&lt;/SPAN&gt;&lt;SPAN style="color: #bbbbbb;"&gt;err&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;)&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ffb86c;"&gt;=&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ff75b5;"&gt;if&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN style="color: #ffcc95;"&gt;!&lt;/SPAN&gt;&lt;SPAN style="color: #ff9ac1;"&gt;promiseUtils&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;.&lt;/SPAN&gt;&lt;SPAN style="color: #6fc1ff;"&gt;isAbortError&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;(err))&amp;nbsp;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ff75b5;"&gt;throw&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;err;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;})&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;where handleMouseMove is:&lt;/P&gt;&lt;DIV style="color: #e6e6e6; background-color: #292a2b; font-weight: normal;"&gt;&lt;DIV&gt;&lt;SPAN style="color: #6fc1ff;"&gt;handleMouseMove&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;=&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN style="color: #bbbbbb;"&gt;event&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;)&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ffb86c;"&gt;=&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;{&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #ffb86c;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;const&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;{&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ff9ac1;"&gt;mapView&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;}&amp;nbsp;=&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ff9ac1;"&gt;this&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;.props;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ff9ac1;"&gt;mapView&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;.&lt;/SPAN&gt;&lt;SPAN style="color: #6fc1ff;"&gt;hitTest&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;(event).&lt;/SPAN&gt;&lt;SPAN style="color: #6fc1ff;"&gt;then&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;((&lt;/SPAN&gt;&lt;SPAN style="color: #bbbbbb;"&gt;hit&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;)&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ffb86c;"&gt;=&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ffb86c;"&gt;const&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;{&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ff9ac1;"&gt;results&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;}&amp;nbsp;=&amp;nbsp;hit;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ff75b5;"&gt;if&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;(&lt;/SPAN&gt;&lt;SPAN style="color: #ff9ac1;"&gt;results&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;.&lt;/SPAN&gt;&lt;SPAN style="color: #ffcc95;"&gt;length&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ffcc95;"&gt;===&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ffb86c;"&gt;0&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;)&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ff9ac1;"&gt;this&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;.&lt;/SPAN&gt;&lt;SPAN style="color: #6fc1ff;"&gt;handleRemoveAllHighlight&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;();&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ff75b5;"&gt;else&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="color: #ff9ac1;"&gt;this&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;.&lt;/SPAN&gt;&lt;SPAN style="color: #6fc1ff;"&gt;handleHighlighting&lt;/SPAN&gt;&lt;SPAN style="color: #e6e6e6;"&gt;(results);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;})&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN style="color: #e6e6e6;"&gt;&amp;nbsp;&amp;nbsp;};&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV style="color: #e6e6e6; background-color: #292a2b; font-weight: normal;"&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Jun 2020 00:10:31 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-javascript-maps-sdk-questions/cancelling-hittest-with-controller/m-p/656590#M61269</guid>
      <dc:creator>Anonymous User</dc:creator>
      <dc:date>2020-06-02T00:10:31Z</dc:date>
    </item>
  </channel>
</rss>

