Bạn muốn một liên kết / HTML hay bạn muốn định tuyến theo thứ bậc / trong mã?
Liên kết : Lệnh RouterLink luôn coi liên kết được cung cấp như một dấu tam giác với URL hiện tại:
[routerLink]="['/absolute']"
[routerLink]="['../../parent']"
[routerLink]="['../sibling']"
[routerLink]="['./child']"
[routerLink]="['child']"
[routerLink]="['../../parent', {abc: 'xyz'}]"
[routerLink]="['../../parent']" [queryParams]="{p1: 'value', p2: 'v2'}" fragment="frag"
Với RouterLink, hãy nhớ nhập và sử dụng directives
mảng:
import { ROUTER_DIRECTIVES } from '@angular/router';
@Component({
directives: [ROUTER_DIRECTIVES],
Imperative : navigate()
Phương thức yêu cầu một điểm bắt đầu (tức là relativeTo
tham số). Nếu không có gì được cung cấp, điều hướng là tuyệt đối:
import { Router, ActivatedRoute } from '@angular/router';
...
constructor(private router: Router, private route: ActivatedRoute) {}
...
this.router.navigate(["/absolute/path"]);
this.router.navigate(["../../parent"], {relativeTo: this.route});
this.router.navigate(["../sibling"], {relativeTo: this.route});
this.router.navigate(["./child"], {relativeTo: this.route});
this.router.navigate(["child"], {relativeTo: this.route});
this.router.navigate(["../../parent", {abc: 'xyz'}], {relativeTo: this.route});
this.router.navigate(["../../parent"], {relativeTo: this.route,
queryParams: {p1: 'value', p2: 'v2'}, fragment: 'frag'});
this.router.navigate(["../../parent"], {relativeTo: this.route, skipLocationChange: true});