Skip to content
hkdobrev edited this page Jan 24, 2013 · 50 revisions

Vote on specifications so we can reach a conclusion

  • Add a + on a feature or design point you concur
  • Add a - on a feature or design point you do not like
  • Create a new bullet for new feature/design points
    • Nest bullets if they are related or subfeatures/points
    • Keep bullets concise
  • Vote count will decide priority
    • You can vote on any bullet once
  • Avoid 'discussing' bullets here. If you disagree, down-vote and discuss in #1

Router Specifications

  1. Defining routes
  2. Should be a recursively nested object (+4 / -1)
  3. Can append more children later in separate method call: andWhen('/parent/route', '/child') (+0 / -3)
  4. Can define an 'otherwise' clause for nested routes (identical to otherwise()) (+1 / -0)
  5. Parameters
  6. Should support an optional syntax: /user/:id[/:searchTerm] (+3 / -3)
  7. Should support typecasting syntax: /user/int:id (+3 / -2)
  8. Route / View Names
  9. Should be optional
    1. Single view (+4 / -0)
    2. If nested view, unnamed route uses unnamed view at the same nesting level (+2 / -1)
  10. Names circumvent nesting level (+2 / -1)
  11. Loading Controllers
  12. All descendant controllers are reloaded (+3 / -1)
  13. $routeUpdated event is $broadcast instead of reloading controller
    1. Always use event (+0 / -2)
    2. Provide optional to opt-in, otherwise reload controller (+3 / -0)
    3. Provide option to opt-in recursively (instead of this controller only) (+0 / -1)
  14. If child route no longer matches
    1. controller is unloaded (+1 / -1)
    2. option to disable unloading (+3 / -0)
    3. related view is emptied (+2 / -1)
    4. option to disable unloading (+2 / -1)
  15. Descendant controllers should have access to scope content of ancestors (+3 / -1)
  16. Utilities
  17. Publicly providers a route checking (+1 / -0) 1. Simplistic REGEX function: uiRouter.is('/some/*') (+1 / -0) 2. Developers can place onto scope: $rootScope.isRoute = uiRouter.is (+0 / -0) 3. Directive to toggle an active class (+0 / -0)
Clone this wiki locally