Another advantage of Ext-JS is that developers dont need to worry about cross-browser rendering issues. If one still need to support really old browsers, Ext-JS is by far the correct solution. However, this will matter less in the future as the browsers continue to stabilize around standards.
Ext-JS is not for free, it comes with a license. Within the license, you get access to the Sencha full support which is very powerful, and one of the strongest reasons many organisations choose this framework. the answers are very helpful, precise,kind of a private StackOverflow with direct access to the programmers who wrote the framework.
Another issue with Ext-JS is related to using strict declarations ("use strict"; at the top of your IIFE block) which is a standard JS practice to protect you from making stupid mistakes. Unfortunately, you cant do this in your Ext JS code without having to work around the problems it produces.
Ext JS offers it own layouts in order to achieve a presentation that will look the same regardless of what browser it is running on. However, the cost of this is that if you nest components too deeply, rendering your view or changes to your view will take significantly longer than anyone is willing to wait around for. So, to get around this, you end up writing sub-optimal code from just about every coding principle in existence. Specifically, DRY and SRP are difficult to achieve using Ext JS views.