Vue,js VS React ? Thoughts and Opinions

Good question. Both the frameworks are ideal for creating additional user elements. But there is some difference between them. In this blog, I found the most detailed information:

React is currently in trend, but the future is really to Vue. It’s considered the most perspective JavaScript development tool
https://artjoker.net/blog/reactjs-vs-vuejs/

1 Like

Somehow, this comparison article irks me…

It’s comparison of the two:

Disadvantages of React JS
The main ReactJS disadvantages are considered these:
– Lack of full framework capabilities (no built-in state management system, no built-in database query tools, etc.);
– Large size of the library (despite its “inferiority” as a framework, React weighs as much as Angular JS, for instance);
– The documentation and manuals are too complicated for novice developers.

Disadvantages of Vue JS
The main VueJS disadvantages include the following:
– Small developer community;
– Scarce job market;
– Component props have to be predefined, passing the dynamic structures through props is impossible;
– Single creator, whose opinions are final;
– The creator is a Chinese American and he is very supportive of Chinese development community, that’s why many of the existing plugins are in the Chinese language;

Of the disadvantages cited in VueJS, only (1) reason have some technical merit. And even that is debatable. Even borderlines on being racist. Invented by a Chinese American – so that’s a disadvantage?

2 Likes

This comparison really is a bit harsh. There is no merit to most of those points. I think Vue has a very bright future, and I know it’s hard to find a specific job that uses it entirely, but surely time will tell. I think it’s the perfect framework to get your feet wet and great for beginners / intermediate coders who truly want to write JS using a “modern framework”.

I see so many job ads that say things like “must have modern web development experience with React, Angular, Ember” — the thing is, they are all different!! You can’t really expect to be an expert at all of them! What I assume these ads are saying is that they are looking for someone comfortable with JS frameworks in general! That’s why learning Vue could be a real advantage, because it is a modern framework but with a far lesser barrier to entry.

I’m really excited about the future of Vue :slight_smile:

1 Like

I believe the two pros you mentioned for React are not only true, but also win the comparison for me. React Native is just brilliant, and React is needed more in the market so…

But sure for small projects you would like to work on, Vue.js seems like a better fit as it’s less complex.

Agreed … “a bit hash”, that’s putting it mildly … the article (https://erminesoft.com/reactjs-or-vuejs-which-is-best-for-your-project/) is terrible, very shallow and misguided on many points, also with regards to React, some examples:

“Lack of full framework capabilities (no built-in state management system, no built-in database query tools, etc.)” – This is nonsense, Vue is also not a complete framework, for full capabilities you need to add Vue-Router, Vuex, and so on - same as with React.

“Large size of the library (despite its “inferiority” as a framework, React weighs as much as Angular JS, for instance)” – I beg your pardon, React (the core) is as big as Angular (I suppose he’s talking about Angular 2)? No way … Angular 2 is much, much heavier.

The author doesn’t seem to know what he’s talking about, and yes the “Chinese” argument is ridiculous, I would argue that it’s actually an advantage because the Chinese dev community is growing fast, and they’re smart (producing a lot of good OSS projects too).

By the way the other article (https://artjoker.net/blog/reactjs-vs-vuejs/) looks even more ridiculous. “React has a poor and highly unclear documentation”, really? I think the docs are well-written and crystal clear. “There is also an unequal service size, comparing to the capabilities of the software” … that’s both subjective and arguably not true.

(a good argument against React, and pro Vue, would be the recent issues about React licensing - the “BSD plus Patents” licens used by React)

1 Like

An article I recently read (https://medium.com/@dwalsh.sdlr/react-facebook-and-the-revokable-patent-license-why-its-a-paper-25c40c50b562) has stated that using Vue.js might violate Facebook’s patents on React, of course, it’s going to depend on whether Facebook will enforce its patents (if they apply to Vue.js) and/or has given Vue.js their blessing. If you’re concerned you should consult an attorney - however, it’s a matter worth considering when choosing what to use with your project.

Wowow thats a very interesting article. I had no idea React had patents! That’s a bit of a shock, and I’m sure the dev community will backlash and be quite outraged that FB / React needs to stoop this low.

This is a great discussion thanks everyone for contributing!

It is not appropriate to develop large projects, and code is extremely cluttered and difficult to maintain.

Have worked professionally with both creating in both cases two pretty reach featured SPA.

I can offer my 0.2$ based on what has been my experience so far.
These are the two main advantages I experienced while working with both:

vue

  • easier to learn

And that’s very true. It’s super easy to transition from a HTML JS/JQuery background straight to Vue since both the syntax and how you “think” about your code is pretty similar to what you are already used to.

Don’t underestimate this: when working in a professional team that made a huge difference. Everyone was on the same page in a little time.
(While right now on react, sometimes we still have to fix code before merging :wink: )

react

  • better programmer

React is more difficult, and that’s known. Thinking in react is a totally new concept to learn.
but in my experience is worth the effort:
I’ve never felt so confident nor coded so efficiently in JS as since I’ve started using react professionally.


We had the same decision to make 2/3 moths ago when deciding which stack to use for a newly fresh project.
We had OUR motivation and picked one, but each case is different.

In conclusion, both are valid options, so rest assured that each one you choose won’t be the wrong pick…
simply because there’s no wrong pick :wink:

2 Likes

I did Max Schwarzmuller’s excellent Vue course on Udemy last year and built a front end app for practice. Mostly a pain free and pleasant experience! If you’ve done any Angular, then Vue will give you deja-vu all the time. It’s kind of like a cleaned up Angular 1.x (or maybe like building a component based Angular 1.6 app without having to think about directives). The only thing I disliked was (like you) the single file components. I found myself constantly scrolling up and down between the template and the Javascript.

Vue.js is a much lighter framework than React, however React seems to have more features out of the box.

To be honest now that I have had a bit of a play with both, I think it really depends on what you are trying to achieve – here are my two cents, seeing as I posted this months ago and have now had some more experience with both:

  • Vue seems to allow for a bit of a faster development process as you generally have to write less code, given that Vue has a variety of directives and filters available out of the box.

  • React still is totally worth learning and the best reason for that is that there are no shortage of jobs both on Upwork and in commercial dev environments in any given city.

  • I probably sound like a broken record, but learning the fundamentals and truly understanding JavaScript should be of most importance. Knowing ES2015 is an absolute must and being able to understand the following concepts is vital (applies to both Vue and React):
    – Components,
    – Event Emitters,
    – Application State & Redux/Vuex,
    – One & Two-way Data Flow / Binding,
    – Object Oriented and Functional Programming with ES2015++
    – … there surely is more to add

Both frameworks are fun to use and worth learning. But I would say it’s a good idea to put vanilla JS first as you may not actually get the luxury of using a modern framework in your job (like me currently!). This means that you’ll need to think creatively about how to achieve similar new age coding patterns to build modules and components with the likes of jQuery or just plain JS.

3 Likes

Love vue and at the moment i have just started learning React … did the freecodecamp beta section on React which was pretty good … i created a page using react with create-react-app and have a lot of the beta section problems done on this page making for easy reference on how things are done, It didnt cover routing though so will have to look elsewhere for this … probably from Academind you tube channel as i find he dose great job explaining things … started the redux section on beta but just got lost so a present going to watch Academind you tube channel on React/Redux playlist
React so far has being pretty easy to follow seeing as i have done Vue allready and while i Like it … I will say i will only be learning it for job prospects as i find vue better. using redux seems a bit more complicated then veux in vue for managing state … but ill wait till i know more redux for my final decision … and with Nuxt.js routing in vue is practically gone as Nuxt handles this for you where as i have to make sure i get learning routing in react right as i think there routing has changed from earlier versions … so am kind of wondering will i need to cover the old routing and the new or just do the new.

Also setting up react without creat-react-app proved to be impossible as what was shown in videos seems to be outdated and no longer works so without create-react-app i would still be trying to set the environment up.

Any way the plan is to learn react make a few projects in it and then to keep react and vue fresh in my head … will do any projects i create in both frame works and without a framework … eg have the vote app done without a frame work but also have it done with vue using Nuxt.js for server side rendering (had to learn a bit to use Nuxt but found it very good ) so will be looking to do vote app in React shortly.

1 Like