| I evaluated react/redux and vue/vuex for a project . I wrote a small poc in both. This is why I chose vue 1. Js doesn’t support immutable data structures so trying to return a deeply nested model using spread and other things was ugly. The answer seems to be “flatten your data”. I didn’t have to flatten my model with vuex. Vuex uses mutations when I can keep a flat model of observable but also keep my pristine model that I can send back over the wire with no changes . I suspect mobx may do the same sort of thing for vue. I feel like the react pattern would work better with a language like clojurescript that actually has immutable data structures. 2. Prefer html to Jsx although vue does support jsx. Admittedly this is just a preference thing. 3. Less boilerplate. I felt like I was writing more code that didn’t really do anything useful in react/redux. Vue seemed to have the smallest ceremony to code ratio. 4. Vuetify seemed a lot easier to use and was more polished than the react counterparts. I know it’s just a widget library but I found it fantastic and the docs were great. Vue slots are a great idea 5. Documentation . Vue has second to none documentation and this is important when you are starting out I build a medium sized app in vue and was astounded that I literally did not run into one issue. That has never happened to me in 30 years. Kudos to that team. 6. React router was on its 4th rewrite. I can’t deal with constant breaking changes 7. Router and vuex felt more cohesive and integrated into vue Whatever you choose please do support these guys on patreon! |