@@ -6,15 +6,22 @@ import { App } from './components/app/app';
66
77export default function ( params : any ) : Promise < { html : string , globals ?: any } > {
88 const serverBindings = [
9- ngRouter . ROUTER_BINDINGS ,
10- ngUniversal . HTTP_PROVIDERS ,
11- ngUniversal . NODE_LOCATION_PROVIDERS ,
12- ngCore . provide ( ngRouter . APP_BASE_HREF , { useValue : '/' } ) ,
139 ngCore . provide ( ngUniversal . BASE_URL , { useValue : params . absoluteUrl } ) ,
14- ngCore . provide ( ngUniversal . REQUEST_URL , { useValue : params . url } )
10+ ngCore . provide ( ngUniversal . REQUEST_URL , { useValue : params . url } ) ,
11+ ngCore . provide ( ngRouter . APP_BASE_HREF , { useValue : '/' } ) ,
12+ ngUniversal . NODE_HTTP_PROVIDERS ,
13+ ngUniversal . NODE_ROUTER_PROVIDERS
1514 ] ;
16-
17- return ngUniversal . renderDocument ( '<app />' , App , serverBindings ) . then ( html => {
15+
16+ return ngUniversal . bootloader ( {
17+ directives : [ App ] ,
18+ providers : serverBindings ,
19+ async : true ,
20+ preboot : false ,
21+ // TODO: Render just the <app> component instead of wrapping it inside an extra HTML document
22+ // Waiting on https://github.com/angular/universal/issues/347
23+ template : '<!DOCTYPE html>\n<html><head></head><body><app></app></body></html>'
24+ } ) . serializeApplication ( ) . then ( html => {
1825 return { html } ;
1926 } ) ;
2027}
0 commit comments