When using Router ( this.router.url
) I am get the string /MyRouterName?type=abc
, sometime /MyRouterName
if not have parameter
Can I only get the path /MyRouterName
(for all cases) from the full url?
The getPath() function is a part of URL class. The function getPath() returns the Path name of a specified URL.
You'll see “https://www.howtogeek.com” instead of “howtogeek.com”. Just right-click in Chrome's address bar select “Always show full URLs” to make Chrome show full URLs.
You can split the url string using the split() method by specifying a delimiter ( / in your case) and it will return an array.
You can use the activated route component's snapshot to get this url.
import { Router, ActivatedRoute } from '@angular/router'; constructor( private router: Router, private activatedRoute: ActivatedRoute) { console.log("routes"); console.log(activatedRoute.snapshot.url); // array of states console.log(activatedRoute.snapshot.url[0].path); }
Link to original SO answer by Jose G Varanam How to get current route
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