Skip to content

Commit a231d97

Browse files
authored
fix(router): export module loader, don't use it by default (#580)
1 parent dad72c1 commit a231d97

File tree

4 files changed

+14
-19
lines changed

4 files changed

+14
-19
lines changed

Diff for: nativescript-angular/router.ts

+3-10
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { NgModule, ModuleWithProviders, NO_ERRORS_SCHEMA, NgModuleFactoryLoader } from "@angular/core";
1+
import { NgModule, ModuleWithProviders, NO_ERRORS_SCHEMA } from "@angular/core";
22
import { RouterModule, Routes, ExtraOptions } from "@angular/router";
33
import { LocationStrategy, PlatformLocation } from "@angular/common";
44
import { NSRouterLink } from "./router/ns-router-link";
@@ -8,7 +8,7 @@ import { NSLocationStrategy, LocationState } from "./router/ns-location-strategy
88
import { NativescriptPlatformLocation } from "./router/ns-platform-location";
99
import { RouterExtensions } from "./router/router-extensions";
1010
import { NativeScriptModule } from "./nativescript.module";
11-
import { NsModuleFactoryLoader } from "./router/ns-module-factory-loader";
11+
export { NSModuleFactoryLoader } from "./router/ns-module-factory-loader";
1212

1313
export { PageRoute } from "./router/page-router-outlet";
1414
export { RouterExtensions } from "./router/router-extensions";
@@ -42,14 +42,7 @@ export type LocationState = LocationState;
4242
})
4343
export class NativeScriptRouterModule {
4444
static forRoot(routes: Routes, config?: ExtraOptions): ModuleWithProviders {
45-
let moduleWithProviders = RouterModule.forRoot(routes, config);
46-
47-
// Override the stock SystemJsNgModuleLoader
48-
moduleWithProviders.providers.push(
49-
{ provide: NgModuleFactoryLoader, useClass: NsModuleFactoryLoader },
50-
);
51-
52-
return moduleWithProviders;
45+
return RouterModule.forRoot(routes, config);
5346
}
5447

5548
static forChild(routes: Routes): ModuleWithProviders {

Diff for: nativescript-angular/router/ns-module-factory-loader.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ const FACTORY_CLASS_SUFFIX = "NgFactory";
1313
const FACTORY_PATH_SUFFIX = ".ngfactory";
1414

1515
@Injectable()
16-
export class NsModuleFactoryLoader implements NgModuleFactoryLoader {
16+
export class NSModuleFactoryLoader implements NgModuleFactoryLoader {
1717
private offlineMode: boolean;
1818

1919
constructor(private compiler: Compiler) {

Diff for: ng-sample/app/app.ts

+7-7
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,17 @@
66
//profiling.start("application-start");
77

88
// "nativescript-angular/application" import should be first in order to load some required settings (like globals and reflect-metadata)
9-
import {
10-
NativeScriptModule,
11-
platformNativeScriptDynamic,
12-
NativeScriptRouterModule,
9+
import {
10+
NativeScriptModule,
11+
platformNativeScriptDynamic,
12+
NativeScriptRouterModule,
1313
NativeScriptFormsModule,
1414
NativeScriptHttpModule,
15-
routerTraceCategory,
15+
routerTraceCategory,
1616
rendererTraceCategory,
1717
listViewTraceCategory,
18-
PAGE_FACTORY,
19-
PageFactory,
18+
PAGE_FACTORY,
19+
PageFactory,
2020
PageFactoryOptions,
2121
onAfterLivesync,
2222
onBeforeLivesync

Diff for: tests/app/main.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import {
55
routerTraceCategory,
66
NativeScriptRouterModule,
77
NativeScriptFormsModule,
8+
NSModuleFactoryLoader,
89
APP_ROOT_VIEW
910
} from "nativescript-angular";
1011
import { AppComponent } from "./app.component";
@@ -23,7 +24,7 @@ import { SinglePageMain, routes as singlePageRoutes } from "./single-page-main.c
2324
import { LazyLoadMain, routes as lazyLoadRoutes } from "./lazy-load-main";
2425
import { FirstComponent } from "./first.component";
2526
import { SecondComponent } from "./second.component";
26-
import { OpaqueToken, NgModule } from "@angular/core";
27+
import { OpaqueToken, NgModule, NgModuleFactoryLoader } from "@angular/core";
2728

2829
import { PageNavigationApp } from "./snippets/navigation/page-outlet";
2930
import { NavigationApp } from "./snippets/navigation/router-outlet";
@@ -137,6 +138,7 @@ class MultiPageModule { }
137138
providers: [
138139
rootViewProvider,
139140
lazyLoadHooksLogProvider,
141+
{ provide: NgModuleFactoryLoader, useClass: NSModuleFactoryLoader },
140142
]
141143
})
142144
class LazyLoadModule { }

0 commit comments

Comments
 (0)