0.2.0 • Published 11 years ago

route-component v0.2.0

Weekly downloads
2
License
-
Repository
-
Last release
11 years ago

route

Route implementation for client-side routers.

Installation

$ component install component/route

API

Route(path)

Initialize a Route with a path string or regexp.

Route#setup(fn)

Assign setup fn used when the "page" is shown.

Route#teardown(fn)

Assign teardown fn used to perform cleanup when an alternate "page" is shown.

Route#match(path)

Match against the given path. Returns false or an array with params matched.

Examples

var route = new Route('/user/:id/posts/:pid');

assert(false == route.match('/something'));
assert(false == route.match('/user/123'));

var ret = route.match('/user/12/posts/1');
assert('12' == ret.id);
assert('1' == ret.pid);

should support wildcards.

var route = new Route('/file/*');
var ret = route.match('/file/js/jquery.js');
assert('js/jquery.js' == ret[0]);

should pass through regexps.

var route = new Route(/^\/foo/);
assert(route.match('/foo'));
assert(false == route.match('/bar'));

should ignore querystrings.

var route = new Route('/user/:id/posts/:pid');

assert(false == route.match('/something?hey'));

var ret = route.match('/user/12/posts/1?something=here');
assert('12' == ret.id);
assert('1' == ret.pid);

should decode the params.

var route = new Route('/user/:name');
var ret = route.match('/user/tj%20holowaychuk');
assert('tj holowaychuk' == ret.name);

License

MIT

0.2.0

11 years ago

0.1.0

11 years ago

0.0.2

11 years ago

0.0.1

11 years ago