Skip to content

Commit 2b74e0e

Browse files
committed
Angular Router In Depth
1 parent 88b6a49 commit 2b74e0e

File tree

3 files changed

+10
-5
lines changed

3 files changed

+10
-5
lines changed

src/app/app-routing.module.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import {NgModule} from '@angular/core';
2-
import {Routes, RouterModule, PreloadAllModules} from '@angular/router';
2+
import {Routes, RouterModule, PreloadAllModules, UrlSerializer} from '@angular/router';
33

44
import {LoginComponent} from './login/login.component';
55
import {PageNotFoundComponent} from "./page-not-found/page-not-found.component";
@@ -38,7 +38,11 @@ const routes: Routes = [
3838
imports: [RouterModule.forRoot(routes,
3939
{
4040
scrollPositionRestoration:"top",
41-
preloadingStrategy: CustomPreLoadingStrategy
41+
preloadingStrategy: CustomPreLoadingStrategy,
42+
paramsInheritanceStrategy: "always",
43+
relativeLinkResolution: "corrected",
44+
// try adding %E0%A4%A to the end of an url with hash true
45+
malformedUriErrorHandler: (error: URIError, urlSerializer: UrlSerializer, url: string) => urlSerializer.parse('/page-not-found')
4246

4347
})],
4448
exports: [RouterModule],

src/app/app.module.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,7 @@ import {HashLocationStrategy, LocationStrategy} from "@angular/common";
5454
SharedModule
5555
],
5656
providers: [
57-
CanLoadCoursesModuleGuard,
58-
//{provide: LocationStrategy, useClass: HashLocationStrategy},
57+
CanLoadCoursesModuleGuard
5958
],
6059
bootstrap: [AppComponent]
6160
})

src/app/courses/services/router/lesson-detail.resolver.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,9 @@ export class LessonDetailResolver implements Resolve<LessonDetail>{
1414

1515
resolve(snapshot: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<LessonDetail> {
1616

17-
const courseUrl = snapshot.parent.paramMap.get("courseUrl"),
17+
// const courseUrl = snapshot.parent.paramMap.get("courseUrl"), without paramsInheritanceStrategy
18+
19+
const courseUrl = snapshot.paramMap.get("courseUrl"),
1820
lessonSeqNo = snapshot.paramMap.get("lessonSeqNo");
1921

2022
return this.courses.loadLessonDetail(courseUrl, lessonSeqNo);

0 commit comments

Comments
 (0)