DISCLAIMER: This post contains only my personal opinion and may not show the whole picture of actual situation in given field.
An inspiration for this article was this reddit thread.
I think the main problem with those questions about Vue.js is the low score of current world-wide adaptation in commercial products.
As I know, the main (biggest) Vue Valley is Asia — big companies like Alibaba, Baidu or Xiaomi uses it now in their production environments.
But why Vue.js doesn’t conquer the world (yet)?
Maybe because of the absence of big companies behind its development? (React has facebook, Angular has google and so on), maybe because of bus factor awareness or maybe just because it was too long centralized in asian community (language barrier).
This approach is a bit dangerous for developers.
We now can see a rise of “react / angular developers” who know how to deliver the product, but are so specialized in their tools only. They code, but don’t really know the quirks of the language itself or don’t know the general programming patterns (e.g. architecture an app without react/angular environment / tooling) This example may sound extreme a bit, but remember that
Hype goes in, hype goes out. We had Backbone.js, Angular 1.x, now we have React.js and Angular 2+(4?). It doesn’t mean that there are no job for developers specialized in that tools — there are, but the best paying jobs are dedicated for currently most hyped ones. Trends changes often, nowadays especially in front-end field.
So my advice for any eager-to-learn developers: master the fundamentals of the language first. When you do that, learn as many as you want additional tools / concepts. I can assure you that they will change after some time, but also such approach will extend your general knowledge. Thanks to that after some time you will be able to mix or apply various solutions in different contexts, e.g.
- using Vue-based widgets in Angular app,
- React-based app that fetch the data from Wordpress-based CMS,
- a mix of micro apps / services written in different frameworks that are tangled together (WTF, but can be done — sky is the limit ).
There’s no such thing like too much knowledge —but if you’re not sure if something is worth to invest your time learning— just go with quick research of the market and so your statement should be settled.
Personally, I live in the country where Vue.js is not popular (yet ;) ) but I’ve found it very fun to work with so I decided that I can wait for its hype to begin — in the meantime I can prepare myself for this big event using Vue.js where’s possible.