Thank you for reporting this bug. We will make it our priority to review this report.
-
Sencha User
[6.7.0 classic] Ext.ux.DataView.Animated example broken and UX issue
The example highlighting Ext.ux.DataView.Animated UX is broken and Ext JS 6.7.0 introduced an issue with the plug in while it redraws elements during store filter runs.
To reproduce the issue with pure Ext JS you'd need to first fix the example at https://examples.sencha.com/extjs/6....-dataview.html, which seems to be broken at least since version 6.0.0 release.
The issue happens because, when running the animation-fade over the fading out entry in the dataview's DOM, Ext.getElementById() fetches a new DOM element which does not match the one in the Ext JS's cache of items, thus an exception is thrown and the DOM element is not destroyed at all. In other words, the plug in creates another copy of the DOM element to "fade-in" with the same ID and, when the "fade-out" callback tries to fetch the -old- element to destroy it, it gets the new element instead.
One way to address the issue would be just to change the call to Ext.get() in line 157 of Animate.js to el = anim.target.target, which would bring the DOM element without the need for id referencing and the code where the cache+fetch mismatch happens don't get executed.
While the fix is short, the change is not elegant, as it allows more than one elements in the page with the same DOM ID, relying in timed tasks (animation callback) in order to be properly disposed of. Ideal would be to rename the faded-out element's ID to something else to let both fading in and fading out elements to co-exist -- or to properly animate an element without actually wiping elements that are maintained in the view after a store change.
-
Sencha - Forum Administrator
Thank you so much for your post. I apologize for the delay. I have shared this with the support staff to look into at their earliest convenience. Your patience is greatly appreciated! We do suggest using the support portal when you need assistance with a capability of a Sencha product, you have identified a situation where a products behavior is inconsistent with the product documentation and might indicate a software bug, or when the communication between you and Sencha needs to be private.
Thanks again,
Michele
-
Ext Support Team
Hello Fabricio,
Thank you for contacting Sencha Support!
This issue has been registered in our bug tracker with reference number EXTJS-28187, this Jira will be linked here for you to receive updates on the status.
Regards,
Kumar
Sencha Support.