UNPKG

angular2

Version:

Angular 2 - a web framework for modern web apps

20 lines (19 loc) 709 B
import { isPresent } from 'angular2/src/facade/lang'; import { RouteData, BLANK_ROUTE_DATA } from '../../instruction'; export class AsyncRouteHandler { constructor(_loader, data = null) { this._loader = _loader; /** @internal */ this._resolvedComponent = null; this.data = isPresent(data) ? new RouteData(data) : BLANK_ROUTE_DATA; } resolveComponentType() { if (isPresent(this._resolvedComponent)) { return this._resolvedComponent; } return this._resolvedComponent = this._loader().then((componentType) => { this.componentType = componentType; return componentType; }); } }