mirror of
https://github.com/aspnet/JavaScriptServices.git
synced 2025-12-22 17:47:53 +00:00
In Angular2Spa, server-side rendering now reports all errors
This commit is contained in:
@@ -8,21 +8,27 @@ enableProdMode();
|
||||
const platform = platformNodeDynamic();
|
||||
|
||||
export default function (params: any) : Promise<{ html: string, globals?: any }> {
|
||||
const requestZone = Zone.current.fork({
|
||||
name: 'angular-universal request',
|
||||
properties: {
|
||||
baseUrl: '/',
|
||||
requestUrl: params.url,
|
||||
originUrl: params.origin,
|
||||
preboot: false,
|
||||
// TODO: Render just the <app> component instead of wrapping it inside an extra HTML document
|
||||
// Waiting on https://github.com/angular/universal/issues/347
|
||||
document: '<!DOCTYPE html><html><head></head><body><app></app></body></html>'
|
||||
}
|
||||
});
|
||||
|
||||
return requestZone.run<Promise<string>>(() => platform.serializeModule(AppModule))
|
||||
.then(html => {
|
||||
return { html: html };
|
||||
return new Promise((resolve, reject) => {
|
||||
const requestZone = Zone.current.fork({
|
||||
name: 'angular-universal request',
|
||||
properties: {
|
||||
baseUrl: '/',
|
||||
requestUrl: params.url,
|
||||
originUrl: params.origin,
|
||||
preboot: false,
|
||||
// TODO: Render just the <app> component instead of wrapping it inside an extra HTML document
|
||||
// Waiting on https://github.com/angular/universal/issues/347
|
||||
document: '<!DOCTYPE html><html><head></head><body><app></app></body></html>'
|
||||
},
|
||||
onHandleError: (parentZone, currentZone, targetZone, error) => {
|
||||
// If any error occurs while rendering the module, reject the whole operation
|
||||
reject(error);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
|
||||
return requestZone.run<Promise<string>>(() => platform.serializeModule(AppModule)).then(html => {
|
||||
resolve({ html: html });
|
||||
}, reject);
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user