hash-regex-router v1.0.1
hash-regex-router
Client-side hashchange regex router for singe-page applications. Works on Chrome 5, Firefox 3.6 and IE 10+.
Routes are processed in the order they are added.
Examples/API
Basic usage:
route(/^about/, function() {
console.log('Showing the About page');
});With capture groups:
route(/^profile\/([0-9]+)/, function(uid) {
console.log('Showing the profile page for user ' + uid);
});Default route:
route(/.*/, function() {
route.go('home');
});Programmatically go to a route (#home):
route.go('home');Goes to #profile/123:
route.go('profile', 123);Refresh the current route:
route.refresh();Disable routing:
route.disable();Re-enable routing:
route.enable();Prevent leaving current route:
route.leave = function() {
return confirm('Leave the current route?');
};AMD/CommonJS
The source router.js uses CommonJS module format. dist/router-standalone.js
contains minified build in UMD format that supports both AMD and CommonJS environments and also
sets global route when directly in browser.
Installing from NPM:
npm install hash-regex-routerIf installed through NPM then the module can be directly used in browserify by simply require()'ing it:
var route = require('router');Building/testing
Install build dependencies:
npm installRun static server:
make serve-testRun tests:
make testLicense
The MIT license.