DEV Community

Cover image for From Angular To Vue: Feeling Like A Beginner Again

From Angular To Vue: Feeling Like A Beginner Again

Florimond Manca on October 25, 2018

Update (30 Oct, 2018): a few days after writing this post, I've already built a good understanding of Vue and its ecosystem. Thanks to everyone who...
Collapse
 
djdany01 profile image
Dani J. Pérez

Hey!

A collegue here, my company started a project in Angular and one week after needed to change from Angular to Vue because "bussiness", I said: "I can do that" (Just 2 months in this company...)
I was really scared, I had 0 experience in Vue and just 1 year in Angular and thought it would be painful but...
Really was so easy to change from Angular to Vue, just one week later I had the project perfectly working.
And I think now I love much more Vue than Angular.

Really don't worry!

Collapse
 
florimondmanca profile image
Florimond Manca

Very heartwarming to hear your story! I’m glad you could adapt so easily. Truly says something about Vue. Also you’re not the first one to say you’d never go back to Angular. ;-) Will I undergo the point of no return too? We’ll see! 🔥

Collapse
 
djdany01 profile image
Dani J. Pérez

The only thing I miss from angular are the Services to separate more the logic.

Get luck! 🔥

Thread Thread
 
florimondmanca profile image
Florimond Manca • Edited

The service system is really just a design pattern, I think it’s easy to implement (without the dependency injection, though). I really like the logic separation it provides. :)

Thread Thread
 
djdany01 profile image
Dani J. Pérez

Yes, of course you can create a file that does the same as it is just a design pattern as you say. 😃

Collapse
 
sergio profile image
deleteme deleteme

Is it me or is Flux/Redux just a meme in the client-side world. It's so full of orchestration and files and plumbing. Bleh!

I've been using mobx stores in all my clientside projects and people on the teams love it. It's very straight forward to use and require no plumbing.

Look into Mobx.

Collapse
 
kayis profile image
K

You don't even need that.

setState is probably enough for at least 80% of all applications.

Collapse
 
sergio profile image
deleteme deleteme

1hunnid

Collapse
 
florimondmanca profile image
Florimond Manca

Thanks for the insight! I’m honestly not 100% convinced by whether Vuex (or any state management library, for that matter) is necessary, but I’ll sure look into Mobx as a possible (more lightweight?) alternative.

Collapse
 
kirklewis profile image
Kirk Lewis

Vuex is the by far the best implementation of Flux there is. Just simple to use. I use for even the most basic Vue app.

Collapse
 
jvukovich profile image
Jonathan Vukovich

When I started with Vuex, it did seem like a lot of plumbing work, which I didn't like. After a bit of research, I found Nuxt.js. They advertise SSR, but have more things built in beyond SSR (which you aren't required to utilize when using Nuxt). They have a Vuex approach that greatly reduces the plumbing. Highly recommend looking into it.

Collapse
 
gksander profile image
Grant Sander

Nuxt for the win! It's very seldom that I create a Vue app without nuxt. So many nice benefits.

Collapse
 
vonheikemen profile image
Heiker • Edited

There are a couple of plugins that can help you feel more "at home."

vue-rx can help you with a more comfortable integration between Rxjs and Vue.

vue-inject can provide you with a nice Depency Injection container thingy.

I haven't use these, because I think vue is good enough, but they look like nice helpers.

Collapse
 
florimondmanca profile image
Florimond Manca

Thanks for the tips! I might look into those, but I’m also interested to see what I can do with « just Vue » first. Vue Inject might be something I’d need anyway though. :)

Collapse
 
lahorijawan1 profile image
Lahori Jawan

Tell you what I don't know why I would need Rxjs because in my 2 years with Vue I never felt to include something out of vue ecosystem. TBH I don't know what problems Rxjs solves.

Thread Thread
 
florimondmanca profile image
Florimond Manca

In Angular, I haven’t found a better way to implement reactivity than RxJS. Vue has other features such as watchers and computed values, so it’s actually pretty unlikely I’m going to need it. 🤔

Collapse
 
tayambamwanza profile image
Tayamba Mwanza

Recently also dipped my toes into Vue but it just couldn't drag me away from Angular, I really like Angulars opinionated nature. Not to say I don't see the value in Vue though. What I've settled on is learning both of them. Angular as my main framework, and Vue as my secondary.

Sometimes you have problems that need a whole toolbox (Angular)

And then there might just be small problems which need a screwdriver (Vue)

That's how I view them mentally, (not saying view is only as powerful as a screwdriver but you get my point)

And I went for Vue instead of React because it has more similarities to Angular, so it wouldn't mess with my mental model as much.

Collapse
 
mandaputtra profile image
Manda Putra

I'm actually scare to use a framework that has many feature out of the box, 😅 i prefer the way of setup this and this, since vue has it i just use it.

When it comes to rxjs i use vue-rx, or just use rxjs without vue-rx because actualy you can bind everything in vue.

But yeah the one developer and another had their own workflow.

Enjoy your journey!

Collapse
 
gluons profile image
Saran Tanpituckpong • Edited

I start learning Vue without any knowledge of any frontend framework.
I feel that Vue is pretty easy. I understand Vue in few days.

PS. Writing TypeScipt in Vue really make me happy. 😇

Collapse
 
florimondmanca profile image
Florimond Manca

Glad to hear! I’m still wondering whether it’s a good idea to use TypeScript. The boilerplate with the decorators and all seems a bit heavy, on a second thought. What do you get from it? :-)

Collapse
 
gluons profile image
Saran Tanpituckpong • Edited

I learn from Vue TypeScript guide.

vue-class-component is pretty handy for creating class-style component.

And I found Vue Property Decorator that make my life easier. 😍

PS. vue-cli can be used to create TypeScript project easily.

Collapse
 
kayis profile image
K

Angular 2+ is a moloch, being integrated with TypeScript and RxJS can be nice if you need that kind of control over your data-flow, which comes handy if you build real-time applications. I'd still prefer Cycle.js over Angular if it's just for the TypeScript & Observables. It's much smaller and cleaner, but it has a much smaller eco-system.

Vue is modern stuff for old school devs, I think. It feels like Angular 1 or Ember, but without all the cruft of views, routes, and controllers.

I prefer React, because of its small API surface and minimal magic (a bit more than Cycle.js sadly), but its flexibility comes at the cost of the dev selecting the right third-party libraries.

Collapse
 
florimondmanca profile image
Florimond Manca

I never heard about Cycle.js, I’ll take a look. The issue of the ecosystem and community is real, and for that matter it looks like the world of Vue has been growing as fast as ever recently. Thanks for your insights!

Collapse
 
vonheikemen profile image
Heiker

Pump the hate breaks, Ankush. Lets just think about this for a second.

What if we could be productive using the standard tools that the language provide us, and only use frameworks/libraries to enhance our productivity?

Collapse
 
tux0r profile image
tux0r

So maybe you'll waste a lot of time learning frameworks - and you could probably write a better, easier framework that fits your project in much less time than that ... :-)

Collapse
 
mygnu profile image
Harry Gill

Nice read! I'm feeling a noob again going the other way from Vue to Angular

Collapse
 
florimondmanca profile image
Florimond Manca

Good luck! It’s definitely a tough time but I’m convinced that it’s a necessary step in any learning process. :)
I’m interested though — what made you switch to Angular?

Collapse
 
mygnu profile image
Harry Gill

Its mainly work, I just got a job and they use Angular, while I've used Vue for most of my personal projects

 
vonheikemen profile image
Heiker

Really?? I suppose sarcasm is not in your dictionary. In any case, can I advise you to stop going around and labeling things according to your first instinct?

This is what I get for making a joke thats only funny to me.

So, apparently you're a totally chill and relaxed person. Cool.

I clearly can't read the tone of your comments, so lets just leave it at that.

Collapse
 
florimondmanca profile image
Florimond Manca

Ah — I heard about Elm! I once looked at the source code of an Elm project and it gave me the chills 😂. Very different way of thinking indeed. That goes to my « To Explore » list ;) Thanks!

Collapse
 
tux0r profile image
tux0r

That sounds wrong.