Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How does Angular and Express routing work together in a mean.js app?

I'm struggling about Angular and Express Routing (by the way, i'm somehow new to Express), i've been handling routes with Angular — with ui-router — but now that i'm starting to build a MEAN.js Application i notice that i can handle server-side routing and client-side routing... and that's what makes me get confused, here are some of my questions:

  • How are they different?
  • If i switch to Express routing will i still have a SPA?
  • Can i use both at same time? How? Is it good practice? Does it has any benefit?
  • When should i use only one of them?
  • How will i handle route parameters?
  • etc...

If someone can explain with detail these questions, and other extra things people need to know i'll be totally thankful.

Also, something that i want to know is: Do i only have to setup server things in Express or do i need to code in Node?

like image 998
Jonathan Solorzano Avatar asked Sep 11 '15 04:09

Jonathan Solorzano


1 Answers

Just two cents here. Other expert should correct me and explain further :

Routing at frontend usually means routing management in url after #. This is because anything after # is ignored by browser. So this is utilized by angular to make on the fly ajax calls and fetch resources depending on route path after #.

What express handles is url before #. This is used to make actual request from browser to server.

How are they different : answered

If i switch to Express routing will i still have a SPA :

You can always have SPA if you manage urls manually at front end side while making ajax calls to populate your single page. managing urls at front end should be with intention of readability.

Can i use both at same time? How? :

Everyone uses both. A SPA also uses both. Usually authentication based thing is handled by express routing while authorization and other routing based interaction like requesting for resources and others, front end routing is used. Even if you use front end routing, for ajax request behind the scene, you are still relying on express's routing.

Is it good practice? Does it has any benefit? :

Using express's routing for authentication and providing resources AND using angular routing for front end to keep SPA in action is always a good practice.

When should i use only one of them? : answered

How will i handle route parameters? :

There are parameters handling both for front end side using route params ( if using ng-route) and at the back end using slug, bodyparser and others. You need to spare some time learning those.

like image 125
binariedMe Avatar answered Sep 26 '22 23:09

binariedMe