But really, if you just want to get things done without arguing about the twenty different ways it _could_ work, then Vue.
React and ecosystem are overflowing with conflicting paradigms and mismatched libraries and frameworks for your frameworks that all make it very messy. In code, and with humans too, it all becomes difficult to navigate.
With Vue, you just do it the Vue way and it all just works. Then you get to focus on more important things like how to craft the product.
Vue sort of "just works" how you would expect it to work. You never really think about dependencies. Never really think about the render cycle. Rarely (maybe never) run into issues with over-render or performance. Vue 3 has been stable with only incremental improvements focused on DX. Big downside: tooling recently has had some instabilities.
State management and routing in Vue are top notch. Pinia is easy to use, works as you expect (rarely catches you off guard), and feels very ergonomic with Vue 3 composition API.
Vue SFCs are much nicer to work with than React and CSS modules -- or worse, CSS in JS (blech!).
Vue's `defineModel`, IMO, is a game changer for managing hierarchical state and simplifies and encourages refactoring[0].
Any project I work on myself, I use Vue.
React is a must have in your toolbox and experience because it has become the "enterprise" choice. Walmart.com, Target.com, tons of other retail websites are React. Amazon.com has React sprinkled in. Microsoft is big on React. Every team that's I've been on that's used it has done it poorly and had issues. Every team ended up with multiple state management paradigms because none of them were "just right". Every team had issues with troubleshooting over-renders and side effects. React is easy at the low end, but very, very challenging to do well at scale which is why I think it's fine in an enterprise context when you have teams enforcing rules, styles, and architecture. It's terrible for small teams moving fast because there's no "standard" React (whereas Vue has coalesced around Vue Router and Pinia, for example).
But really, if you just want to get things done without arguing about the twenty different ways it _could_ work, then Vue.
React and ecosystem are overflowing with conflicting paradigms and mismatched libraries and frameworks for your frameworks that all make it very messy. In code, and with humans too, it all becomes difficult to navigate.
With Vue, you just do it the Vue way and it all just works. Then you get to focus on more important things like how to craft the product.