The New Angular Router
A work-in-progress new router for Angular 1.3 and 2.0, written with AtScript.
State of this project
Currently, the router is usable in Angular 1, but still missing many of the planned features. APIs will rapidly change, so I do not recommend using this in an important production app quite yet.
See the Progress Document for standup-style updates
Trying the router
You can install the router via
npm install angular-new-router
The documentation is pretty sparse. See the
examples/ directory in this repo for now.
For now, the best way for you to help with the new router is to try it out and file GitHub issues with questions or feedback. Please also check out existing discussions.
This router aims to fulfill the requirements mentioned in the Angular 2.0 router design document.
Below is a short summary of these goals:
- Have sensible conventions and defaults
- Be customizable at almost every point
- Support sibling "viewports" (like
ng-views in Angular 1.x's ngRoute)
- Support nested routers
- Allow components to encapsulate entire parts of an application
- Expose a "navigation model" which can be used to generate a navigation UI (like menus)
- Expose which route in the model is active (useful in styling/highlighting links in the menu)
hrefs based on router hierarchies
- Lazy-load components
- Be able to reuse component instances
- Use either push state or hash change mode
- Handle updating the document title