*BLUF*
I want your opinions and examples for the best way to load routes in node 

*Detail*
By default via installing express we split our information regarding routes 
into two files, ./app.js and ./routes/index.js.  

This seems odd and wrong for several (somewhat overlapping) reasons:

   1. In app.js I name each route, and then name them again by virtue of 
   having functions in ./routes/index.js.  Could by DRYer.
   2. I would like to encapsulate everything that defines my routes in 
   ./routes
   3. It seems primitive to have to tell my node server explicitly to load 
   every file in the ./routes directory.  I wasn't putting files with 
   functions in there for my own amusement.  Node, go get everything, ok?
   4. I would like to be able to split my route definitions into multiple 
   files so that I don't have to mess with grouping similar functions together 
   in specific places in one file like ./app.js or ./routes/index.js.  I 
   should be able to drop a function for a new route into 
   ./routes/shoppingCart.js and another one into ./routes/catalog.js, and so 
   on without having to find the "shopping cart section" within 
   ./routes/index.js.  as a corollary, if I do have separated shopping cart 
   and catalog route files, it seems brittle to have to name the files in 
   ./app.js by first "requiring" them and then app.get or app.post declaring 
   the routes.  see #1 above.

So, I like the solution proposed 
here: 
http://stackoverflow.com/questions/5364928/node-js-require-all-files-in-a-folder

In that example tbranyen suggests using fs.readdirsync to loop through each 
file in ./routes and require each.  a colleague suggested making this 
recursive to handle the subdirectories and that seems reasonable - I'll try 
it.

My concerns as a node noob are several:

   1. will one or more calls to fs.readdirsync or fs.readdir potentially 
   mess up / slow down my node startup?
   2. has this been solved in a better way by the node team or in some 
   other framework or in a branch/fork thereof?
   3. are there future plans for node or some other framework to solve this?

Any advice from anyone appreciated.

and then lower

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

Reply via email to