I want to create a route link dynamically.
I have the html loaded with the page however, i need to use an id in the URL which is available much later.
HTML :
<a href="javascript:void(0)" routerLink="cartoonBoxUrl()" routerLinkActive="active">Add Content to Cartoon Box</a>
The link in this routelink contains the id of the cartoon box(/carton-box/1). This id is available after the page loads. Therefore i need a way to create a route link to include this id.
So i believe we can do something like : routerLink="'cartoon-box/' + id"
but i was hoping to link routerlink to a component function
Without []
Angular doesn't evaluate the expression and just uses cartoonBoxUrl()
as literal string.
<a href="javascript:void(0)" [routerLink]="cartoonBoxUrl()" routerLinkActive="active">Add Content to Cartoon Box</a>
<a href="javascript:void(0)" (click)=cartoonBoxUrl()>Add Content to Cartoon Box</a>
in your ts component.ts file do
import {Router} from "@angular/router";
public ID: any;
constructor(private router: Router){}
cartoonBoxUrl(){
this.ID = Your LinkId;
this.router.navigate(['YourRouteLink/', this.ID]);
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With