The key reason web frameworks dominate these days is that it's very hard to keep the UI in sync with state.
That's it - that's the problem they solve. People started writing vanilla HTML/CSS/JS and struggling to make "reactivity" (hence React) work well when web applications got complex with a lot of state to manage. So we started building frameworks on frameworks and abstractions on abstractions and ended up where we are today.
It's gone a bit far but the overall purpose is a valid one.
(From someone who has used React professionally but uses vanilla HTML/CSS/JS for his personal website)
That's it - that's the problem they solve. People started writing vanilla HTML/CSS/JS and struggling to make "reactivity" (hence React) work well when web applications got complex with a lot of state to manage. So we started building frameworks on frameworks and abstractions on abstractions and ended up where we are today.
It's gone a bit far but the overall purpose is a valid one.
(From someone who has used React professionally but uses vanilla HTML/CSS/JS for his personal website)