VUEJS or REACTJS - what to choose | SoloLearn: Learn to code for FREE!

+7

VUEJS or REACTJS - what to choose

Imagine that you have to write a fairly large application, but the frontend will not be too extensive. What framework would you use? Reacjs or Vuejs? I care about specific arguments, why exacly this one and not the other one. I mainly deal with backends, of course I know both frameworks at the junior level, but I'd like to get to know your opinions.

6/27/2019 9:00:25 PM

Krzysztof Bujak

15 Answers

New Answer

+8

I have pulled up a few articles, as I know there are a lot of really bad or biased ones out there. At first glance, these appear to be objective and at initial review, seem to represent the good and the bad of ReactJS. Again, I'm not sweatin' the cons... we have a great workflow and don't regret ReactJS for our needs. I highly recommend reading the comments and focus on the ones that appear to come from objective people. 😉 https://medium.com/javascript-in-plain-english/i-created-the-exact-same-app-in-react-and-vue-here-are-the-differences-e9a1ae8077fd https://medium.com/fundbox-engineering/react-vs-vue-vs-angular-163f1ae7be56 https://dzone.com/articles/reactjs-vs-vuejs-comparison-of-popular-frameworks https://artjoker.net/blog/reactjs-vs-vuejs/ https://itnext.io/anyway-this-is-why-i-prefer-vue-over-react-ad2653595fc5 Good luck deciding. 🤓👌

+7

Linus Gates LOL... Thanks for sharing that Reddit post. I especially got a kick out of the side conversation about why so many people misspell the word 'lose' as 'loose'. That kills me every time I see that in SoloLearn. 🤣😂 I honestly thought it was just me that was triggered by that. 😂 Then the explanation that followed was just great stuff. Awesome stuff! 👌

+7

rudolph flash I have no doubt that Vue is a good framework. The problem is, many developers, like myself, prefer the flexibility of piecing together libraries and not being forced to follow other popular, yet, opinionated frameworks. I suppose it comes down to preferences where there is parity in features and capabilities. I prefer greater control rather than things that just programmagically work. I'm also someone who enjoys reading the source code of libraries and modules used in my projects. 😉 It's also why I've struggled with finding the same love that come so naturally for others with Ruby on Rails, Angular, and any framework that use scaffolding features and a rules for "their" way of doing things. I dare say this applies to why I struggle with finding love with Python and their Pythonic ways. 😂🤣 Nothing wrong with these frameworks or language or those who love them. It's just me. 🤓

+6

Krzysztof Bujak I can only speak for ReactJS since I've not built anything beyond a simple prototype in Vue. That said, I've been building large scale SPA apps for many years and have been, by far, happiest working with ReactJS. While I'm a fullstack, multi-platform, polyglot developer, I got my start mostly in backend SOA type of enterprise development. I think that ReactJS really lends itself towards software engineers more than designers and frontend developers. The patterns used with ReactJS and especially with Flux or Redux scream of design patterns that will frustrate many designer centric frontend developers. So, in that sense, it could be a steep learning curve. Even if I was too try Vue, I would likely opt for JSX over the HTML template engine because I can't stand declarative programming in HTML to simulate imperative statements and loops. Also, while the perf tests might show an edge with Vue over ReactJS, it's never been a noticeable issue with our very large applications. (continued...)

+5

Christian Paez I don't think that's a completely true statement. There may be more developers for react, since it's been around for longer than vue, but any modern framework will have good support for most browsers since they all compile down to older versions of javascript, and a well written app will have proper polyfills for what isn't supported just by syntax changes. David Carroll I've mainly only worked with react as well and I agree that having control over everything makes a lot more sense than things like the attributes for loops and logic.

+5

David Carroll Yes, it's so irritating when you find people confusing you by misspelling lose as loose and vice-versa! Anyways, for those who still don't know and are reading these comments, 'Lose' is the word that generally stands for defeat or for the opposite of win. 'Loose' is the word that is used for things that are not tight, like a loose thread.

+5

David Carroll I can't argue with you, because I have much less experience than you and I have not worked with ReactJS. I just can add to my statement that I can change the Webpack configuration by adding the file vue.config.js, and the command in the 'vue inspect' terminal will allow you to see the Webpack settings for the project. There are also available hooks for the Vue object's life cycle. Change the “life” of the component as needed. There are also hooks for the router. Create your own directives, extend existing components, write your own rendering methods using rendering functions ... Finally, create your own plugins and apply them in your projects. Separate talk about Vuex... I also think that working with React will also please me. Just as I loved JavaScript with C#, although they have completely different concepts ☺ BTW. As you can see, I do not have a bad word about React and about those who use it. I just use VueJS for the moment and I like it.

+4

To add to whaf Eliad said, I personally prefer react over vue as well, although if you're going for performance or this will be a widely used application on slower mobile devices, vue may be better. From what I've seen, vue usually performs better in benchmarks and also results in a smaller bundle size.

+4

David Carroll excellent comment with many good points. You bring up many reasons why I also prefer to use React over Vue. Vue has a bit too much "magic" in my opinion, and it is more oriented for designers and perhaps even dare to say JavaScript "begginers", while React leaning more heavily on raw JavaScript and more complex implementation though Functional Programming concepts, which I find more appealing and satisfying to work with personally.

+4

At their core - React is a library. Vue is a framework. Library will give u more flexability. Framework will provide better structure. In my opinion — the below article/press really hurt Vue’s chances of taking React. Frameworks change to early in the game. https://www.reddit.com/r/vuejs/comments/c460wl/a_dank_recap_of_the_week/

+4

I like VueJs. Vue CLI - build most projects without the need to manually configure Webpack, Babel, etc. Single File component - is a combination of HTML, JavaScript (you can also select TypeScript) and CSS (os SASS, ...). Clear delineation, ease of programming (also syntactic backlighting), own scope. This is a ready-made element with a view and logic that can be applied several times. Vuex - state managenent. Vue-Router - navigate easily. Dynamic routes, nested routes. VueDevtools - is a good browser add-on that helps in developing. Easily add other plugins (validation, ui-components, axios, ...). And if you want, then there is the possibility to use Render Functions and JSX. So really, VueJS has a light curve of learning, which means that HAVING MASTERED THE BASICS you can create applications. However, VueJS has many MORE FEATURES!!! You just have to dive in VueJS and then you'll love it 😉

+4

Thank you! Very interesting discussion :). I finally chose the vuejs, mainly because of the low entry threshold.

+3

I think both frameworks are great and do the job of creating a reactive UI easily very well, also they both have great communities, support tools and npm packages. After trying both, I personally prefer React over Vue, simply because the way it feels and handles the code (Components, immutability, pure functions, everything is done in JavaScript). React is very sophisticated and declarative, you know exactly what would be rendered to the page, and has a great dev tools support for development and production. That said, I think Vue's learning curve is softer, so if your specific need is just quickly fix yourself a UI and focus mainly on the server side aspect, I think Vue will be the better choice for you.

+3

React probably has better support since is more popular

+3

both are good. Suggest to start from React