1.5.2 • Published 9 years ago
router-express v1.5.2
router-express 
Install
npm install --save router-express
Basic usage
var express = require('express')
var routerExpress = require('router-express')
var app = express()
var routes = [
{
name: 'homepage',
url: '/',
module: 'static/home'
},
{
name: 'contact',
url: '/contact-us',
module: 'static/contact'
}
]
global.Router = new RouterExpress(routes)
Router.bind(app)
Modules structure
modules/
static/
home/
index.js
contact/
index.js
Module file
// modules/static/home/index.js
module.exports = function (req, res) {
return res.end('Homepage')
}
URL methods
var example = Router.createUrl('contact', {foo: 'bar'}) // -> /contact-us?foo=bar
var another = Router.updateUrlWithParam(example, 'foo', undefined, res.params.route) // -> /contact-us
Advanced usage
Access routes
When you create your new RouterExpress instance, you can access all the routes via
Router.routes
List of route parameters
{
actionFile: // @alias module
lastOrder:
modulesDir: // @default `path.join(__dirname, 'modules')`
method: // @default 'get'
module: // @alias actionFile
name:
order:
params: // @default {}
regexUrl: // @reverts to url
regexParams:
url:
}
Fetch route files automatically
Put your routes.json
or routes.js
files in every folder in your modules
folder, then you can fetch all your routes and merge them with
var RouterExpress = require('router-express')
var routes = RouterExpress.fetchRoutes()
// or for your custom modules directory:
var routes = RouterExpress.fetchRoutes('myModules')
Features
- Get a route by its name (
route.name
) and access its properties - Create a url for a route by its name (
route.name
) - reverse routing - Update a url via providing parameters
- Inject/update parameters of a url defined in regex (
regexUrl
,regexParams
) - Combine all request parameters to
res.params
container - Set default parameter values of
res.params
by defining them onroute.params.
- Access request's route object in action via
res.params.route
- Middleware function support before route action is called
1.5.2
9 years ago
1.5.0
9 years ago
1.4.7
9 years ago
1.4.6
9 years ago
1.4.5
9 years ago
1.4.4
9 years ago
1.4.3
9 years ago
1.4.2
9 years ago
1.4.0
9 years ago
1.3.11
9 years ago
1.3.10
10 years ago
1.3.9
10 years ago
1.3.8
10 years ago
1.3.7
10 years ago
1.3.6
10 years ago
1.3.5
10 years ago
1.3.4
10 years ago
1.3.3
10 years ago
1.3.2
10 years ago
1.3.1
10 years ago
1.3.0
10 years ago
1.2.0
10 years ago
1.1.8
10 years ago
1.1.7
10 years ago
1.1.6
10 years ago
1.1.5
10 years ago
1.1.4
10 years ago
1.1.3
10 years ago
1.1.2
10 years ago
1.1.1
10 years ago
1.0.8
11 years ago
1.0.7
11 years ago
1.0.6
11 years ago
1.0.5
11 years ago