I got one can do without the "polish I am used to". I'm generally fine with HTML form controls.
My problem with JavaScript frameworks is they are huge beasts that build their components out of non-semantic block elements. A button or text field is just a giant mass of divs and spans with events attached everywhere with one-off CSS. The browser is stuck doing tons of work in its single-threaded JavaScript engine to build and manage these components.
It's a lot of wasted memory and clock cycles to recreate a text field the browser already provides. It makes for a worse user experience, wastes my battery, and eats up my bandwidth. To me it's not polish but waste.
Regarding the massive nestings of divs. Well this is computer generated HTML. It is ugly as hell, but browsers are well geared up to deal with it, it doesn't create any serious performance issues unless taken to stupid levels. The other side of the coin, with this rather ugly generated HTML, is you get a human benefit, a time saving efficiency. You can spin up a web page with React/Bootstrap in a fraction of the time it took you in the 1990s.
Emphatically no. The absolute vast majority of those "polished dropdowns" are horrible to use, and break all possible platform conventions (for example, not accessible or usable with a keyboard)
> countless other controls you interact with every day require javascript.
Very few, if any, "polished controls" used on the absolute vast majority of web sites require javascript.
"Dropdowns are toggleable, contextual overlays for displaying lists of links and more. They’re made interactive with the included Bootstrap dropdown JavaScript plugin"
- don't follow platform conventions (don't trigger the actual system dropdowns with actual expected behavior)
- get cutoff by browser chrome when page is zoomed in (because you can't control that behavior from JS)
- default implementation's touch targets are too small
And that's for a framework which has had over a decade to make this work.
This is not to throw undue shade: they've done a very good job. But that's about as far as you can get.
Or just a proper GUI framework not based on HTML.