@@ -6,15 +6,22 @@ import { App } from './components/app/app';
6
6
7
7
export default function ( params : any ) : Promise < { html : string , globals ?: any } > {
8
8
const serverBindings = [
9
- ngRouter . ROUTER_BINDINGS ,
10
- ngUniversal . HTTP_PROVIDERS ,
11
- ngUniversal . NODE_LOCATION_PROVIDERS ,
12
- ngCore . provide ( ngRouter . APP_BASE_HREF , { useValue : '/' } ) ,
13
9
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
15
14
] ;
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 => {
18
25
return { html } ;
19
26
} ) ;
20
27
}
0 commit comments