@@ -61,11 +61,20 @@ export const COMMON_PROVIDERS = [
61
61
62
62
export class NativeScriptPlatformRef extends PlatformRef {
63
63
private _bootstrapper : BootstrapperAction ;
64
+ private static _rootPageRef : WeakRef < Page > ;
64
65
65
66
constructor ( private platform : PlatformRef , private appOptions ?: AppOptions ) {
66
67
super ( ) ;
67
68
}
68
69
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
+
69
78
bootstrapModuleFactory < M > ( moduleFactory : NgModuleFactory < M > ) : Promise < NgModuleRef < M > > {
70
79
this . _bootstrapper = ( ) => this . platform . bootstrapModuleFactory ( moduleFactory ) ;
71
80
@@ -149,12 +158,13 @@ export class NativeScriptPlatformRef extends PlatformRef {
149
158
const navEntry : NavigationEntry = {
150
159
create : ( ) : Page => {
151
160
let page = pageFactory ( { isBootstrap : true , isLivesync } ) ;
161
+ NativeScriptPlatformRef . rootPage = page ;
152
162
if ( this . appOptions ) {
153
163
page . actionBarHidden = this . appOptions . startPageActionBarHidden ;
154
164
}
155
165
156
- let onLoadedHandler = function ( ) {
157
- page . off ( "loaded" , onLoadedHandler ) ;
166
+ let initHandler = function ( ) {
167
+ page . off ( Page . navigatingToEvent , initHandler ) ;
158
168
// profiling.stop("application-start");
159
169
rendererLog ( "Page loaded" ) ;
160
170
@@ -184,7 +194,7 @@ export class NativeScriptPlatformRef extends PlatformRef {
184
194
} ) ;
185
195
} ;
186
196
187
- page . on ( "loaded" , onLoadedHandler ) ;
197
+ page . on ( Page . navigatingToEvent , initHandler ) ;
188
198
189
199
return page ;
190
200
}
0 commit comments