@@ -61,11 +61,20 @@ export const COMMON_PROVIDERS = [
6161
6262export class NativeScriptPlatformRef extends PlatformRef {
6363 private _bootstrapper : BootstrapperAction ;
64+ private static _rootPageRef : WeakRef < Page > ;
6465
6566 constructor ( private platform : PlatformRef , private appOptions ?: AppOptions ) {
6667 super ( ) ;
6768 }
6869
70+ static set rootPage ( page : Page ) {
71+ NativeScriptPlatformRef . _rootPageRef = new WeakRef ( page ) ;
72+ }
73+ 74+ static get rootPage ( ) : Page {
75+ return NativeScriptPlatformRef . _rootPageRef . get ( ) ;
76+ }
77+ 6978 bootstrapModuleFactory < M > ( moduleFactory : NgModuleFactory < M > ) : Promise < NgModuleRef < M > > {
7079 this . _bootstrapper = ( ) => this . platform . bootstrapModuleFactory ( moduleFactory ) ;
7180
@@ -149,12 +158,13 @@ export class NativeScriptPlatformRef extends PlatformRef {
149158 const navEntry : NavigationEntry = {
150159 create : ( ) : Page => {
151160 let page = pageFactory ( { isBootstrap : true , isLivesync } ) ;
161+ NativeScriptPlatformRef . rootPage = page ;
152162 if ( this . appOptions ) {
153163 page . actionBarHidden = this . appOptions . startPageActionBarHidden ;
154164 }
155165
156- let onLoadedHandler = function ( ) {
157- page . off ( "loaded" , onLoadedHandler ) ;
166+ let initHandler = function ( ) {
167+ page . off ( Page . navigatingToEvent , initHandler ) ;
158168 // profiling.stop("application-start");
159169 rendererLog ( "Page loaded" ) ;
160170
@@ -184,7 +194,7 @@ export class NativeScriptPlatformRef extends PlatformRef {
184194 } ) ;
185195 } ;
186196
187- page . on ( "loaded" , onLoadedHandler ) ;
197+ page . on ( Page . navigatingToEvent , initHandler ) ;
188198
189199 return page ;
190200 }
0 commit comments