I'm submitting a ... (check one with "x")
[ ] bug report => Search github for a similar issue or PR before submitting
[x] feature request => Please check if request is not on the roadmap already https://github.com/primefaces/primeng/wiki/Roadmap
[ ] support request => Please do not submit support request here, instead see http://forum.primefaces.org/viewforum.php?f=35
Current behavior
Lazy loading in p-dropdown currently only means that the value list is only loaded when the dropdown is opened. At this point, all values will be loaded. Filtering is done over these loaded values.
Expected behavior
For large sets of data it is necessary to do lazy loading with server-side paging, as is possible with p-table. Events should be fired for initial loading and filtering so that the parent component can load the appropriate data from the backend. Optional would be an event on scrolling to the end of the list, which could also trigger lazy loading in the parent.
What is the motivation / use case for changing the behavior?
When selecting from a large set of data (e.g. ~1000 complex data structures), loading all values from the backend would slow down the application too much. Filtering is already present and might as well be carried out in the backend.
Any updates on this issue? @cagataycivici
Maybe it is better to use an overlaypanel that has a table inside with lazy page-sort-filter to deal with huge datasets.
How is an improper input element better? An input select should mimic standard HTML select. Not be in a table. The point is to enhance the default capabilities, not give the user an awful user experience by inventing some ridiculous table overlay for selecting an item from a list.
@cagataycivici , I totally agree with @thomas-parrish do you have a voting system for requested features to avoid closing issues that are important for your users
I was shocked when i found out that p-dropdown do not support lazy loading!
It is "nice" that i can scroll over 10k items with Virtual Scroll but where i'm going to get 10k items ?
From API ofc! and loading all 10k items on page load is "no-go".
What is a point of "Virtual Scroll" anyway ? Nobody will embed 10k items inside app code or load it all from API...
At least add an event that will fires when the inner filter value is changed. Thank you!
Is there any updates on this issue?
I'd really love to see this feature, too. Seems though that no one will look at it - the feature request is closed.
@fkamp feature is available in this fork: https://github.com/yelhouti/primeng
We are trying to stay up today with this repo. latest release was today.
Most helpful comment
I was shocked when i found out that p-dropdown do not support lazy loading!
It is "nice" that i can scroll over 10k items with Virtual Scroll but where i'm going to get 10k items ?
From API ofc! and loading all 10k items on page load is "no-go".
What is a point of "Virtual Scroll" anyway ? Nobody will embed 10k items inside app code or load it all from API...