import 'angular2-universal-polyfills/browser'; import { enableProdMode } from '@angular/core'; import { platformUniversalDynamic } from 'angular2-universal'; import { AppModule } from './app/app.module'; import 'bootstrap'; const rootElemTagName = 'app'; // Update this if you change your root component selector // Enable either Hot Module Reloading or production mode if (module['hot']) { module['hot'].accept(); module['hot'].dispose(() => { // Before restarting the app, we create a new root element and dispose the old one const oldRootElem = document.querySelector(rootElemTagName); const newRootElem = document.createElement(rootElemTagName); oldRootElem.parentNode.insertBefore(newRootElem, oldRootElem); platform.destroy(); }); } else { enableProdMode(); } // Boot the application, either now or when the DOM content is loaded const platform = platformUniversalDynamic(); const bootApplication = () => { platform.bootstrapModule(AppModule); }; if (document.readyState === 'complete') { bootApplication(); } else { document.addEventListener('DOMContentLoaded', bootApplication); }