qipp-services-route
v1.2.2
Published
Route service for Angular application.
Downloads
1
Readme
qipp-services-route
General
The resolveRoute provider is part of the routing configuration, included in the resolve property of the $routeProvider. It binds the route with the corresponding template, checking the state of the user session.
Install
npm i qipp-services-route
Angular usage
General
The resolveRoute() method should be used in the config phase of your angular application:
// In your app.
var myRoutes = [
{id: 'items'},
{id: 'items/:id'},
{id: 'items/new'}
]
// In the config phase of your app.
angular.forEach(myRoutes, function (route) {
$routeProvider.when(helperProvider.url(config, route.id), {
templateUrl: helperProvider.template(config, route.id),
controller: helperProvider.controller(config, route.id),
resolve: {
resolveResult: ['resolveRoute', function (resolveRoute) {
return resolveRoute(route);
}]
}
})
})
Anonymous routes
You can add the boolean anon property to your routes:
var myRoutes = [
{id: 'someRoute', anon: true}
]
No user routes
You can add the boolean nouser property to your routes:
var myRoutes = [
{id: 'someOtherRoute', nouser: true}
]
Setting Header and footer
The header and footer properties could be used to set these custom elements in the view:
var myRoutes = [
{id: 'someRouteWithHeader', header: 'path/to/header'},
{id: 'someRouteWithFooter', header: 'path/to/footer'}
]
Please note that the helper service from the qipp-services-helper is used.
Custom routes
Custom routes could be defined in the config phase of your application, provided as an array of lowercase strings which are then evaluated as matching conditions in order to resolve the route, e.g. example is then decoupled as a promise on the $rootScope.promises pool (lowercase) and as a controller (ExampleController):
resolveRouteProvider.defaults.customRoutes = [
'lists',
'things'
]
Tools
Linting with StandardJS
Please refer to the JavaScript Standard Style for general rules.
npm run lint
Unit testing with Karma
npm test
Requirements
Angular
- angular 1.4.3
- angular-route 1.4.3
Qipp modules
- qipp-services-helper 0.1.0
- qipp-services-session 0.1.0
- qipp-services-user 0.1.0
Licence
Released under the MIT license by qipp.