| Having used both React (with Typescript and Redux) and the latest Vue (with es6 and Vuex) I prefer React, and I don't even use React Native. Vue is better for onboarding people more in tune with "classic" html + js development; and that's where the advantages end as far as I'm concerned. This might be a big win for some people. The way I reason about it is that React is simple, Vue is easy.
When you take into account Vue's templating language, React's api is small in comparison.
A beginner won't know how to do some common use cases reading React's docs, when Vue might have a something built-in in its templating language (e.g. slots, or the component tag for dynamic components). Slightly annoyed with Vuex too because of its slightly leaky abstraction.
You have to remember to setup the properties you mutate so the reactivity will detect a change; and also remember not use array indexes arrays cause it can't detect changes otherwise. The array index thing will be fixed in the next version when they drop support for some older IE.
Using Typescript would probably help a bit here, although Typescript being useless for checking Vue templates really feels like a huge chunk of its value is wasted. Typescript is not currently available in the official blessed boilerplate which greatly affects its uptake in the Vue community. Anyway, if you already know React, there is zero advantage in investing time in Vue. |
That and when you add JSX to mithril, the api just feels so simple and i rarely find myself checking the docs for something.