# Perspective Dropdown Loading Performance

**URL:** <https://forum.inductiveautomation.com/t/perspective-dropdown-loading-performance/77830>\
**Category:** Ignition\
**Tags:** ignition81, perspective\
**Created:** [August 14, 2023, 8:48pm UTC](https://forum.inductiveautomation.com/t/perspective-dropdown-loading-performance/77830 "2023-08-14T20:48:03Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Derek\_Reees](https://avatars.discourse-cdn.com/v4/letter/d/ccd318/32.png) [@Derek\_Reees](https://forum.inductiveautomation.com/u/Derek_Reees)\
**Post date:** [August 14, 2023, 8:48pm UTC](https://forum.inductiveautomation.com/t/perspective-dropdown-loading-performance/77830/1 "2023-08-14T20:48:03Z")

</div>

I have a dropdown with ~32K options currently and it takes a second or two for the dropdown to load.  
This happens on both mobile & desktop (v8.1.27)

I tried moving the direct binding to an onStartup script, thinking it was reloading every time it dropped down, but that did not help any. The query is almost instantaneous and is only two columns of integers.  
I also have the named query being cached for 60 seconds but that also makes no difference.

Anyone else have any ideas on how to make it more performant?

---

<div class="post-metadata">

**Author:** ![brian.mcenulty](https://avatars.discourse-cdn.com/v4/letter/b/b77776/32.png) [@brian.mcenulty](https://forum.inductiveautomation.com/u/brian.mcenulty)\
**Post date:** [August 14, 2023, 8:52pm UTC](https://forum.inductiveautomation.com/t/perspective-dropdown-loading-performance/77830/2 "2023-08-14T20:52:43Z")

</div>

Is the content something that can be split up into a multi-tiered dropdown? From a UX point of view, a single dropdown with 32k options sounds like a nightmare regardless of the performance.

---

<div class="post-metadata">

**Author:** ![Derek\_Reees](https://avatars.discourse-cdn.com/v4/letter/d/ccd318/32.png) [@Derek\_Reees](https://forum.inductiveautomation.com/u/Derek_Reees)\
**Post date:** [August 14, 2023, 9:15pm UTC](https://forum.inductiveautomation.com/t/perspective-dropdown-loading-performance/77830/3 "2023-08-14T21:15:40Z")

</div>

No, it is a list of open work orders. It was more to make validation easier since they can't add a value, plus I get my ID column from the DB to pass back to queries. I can do it via Text Field, it's just not a pretty and I went down a rabbit hole with this particular issue.

---

<div class="post-metadata">

**Author:** ![Derek\_Reees](https://avatars.discourse-cdn.com/v4/letter/d/ccd318/32.png) [@Derek\_Reees](https://forum.inductiveautomation.com/u/Derek_Reees)\
**Post date:** [August 14, 2023, 9:17pm UTC](https://forum.inductiveautomation.com/t/perspective-dropdown-loading-performance/77830/4 "2023-08-14T21:17:09Z")

</div>

And also the search function was nice.

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [August 14, 2023, 9:17pm UTC](https://forum.inductiveautomation.com/t/perspective-dropdown-loading-performance/77830/5 "2023-08-14T21:17:34Z")

</div>

A table component with `virtualized: true` is going to be a lot more performant.  
The dropdown won't be, because no matter what, you're constructing _at least_ 32,000 DOM elements.

---

<div class="post-metadata">

**Author:** ![Derek\_Reees](https://avatars.discourse-cdn.com/v4/letter/d/ccd318/32.png) [@Derek\_Reees](https://forum.inductiveautomation.com/u/Derek_Reees)\
**Post date:** [August 14, 2023, 9:21pm UTC](https://forum.inductiveautomation.com/t/perspective-dropdown-loading-performance/77830/6 "2023-08-14T21:21:14Z")

</div>

thanks @paul-griffith.
