Porównaj ceny domen i usług IT, sprzedawców z całego świata

Sprawdź, czy router.url zawiera określony ciąg?


Mam to :
if (this.router.url === '/test/sort') { this.active = 0;
}

Problem polega na tym, że czasami adres URL będzie miał postać
test/sort? ProcesId = 11
i dlaczego nie zostanie uwzględniony w instrukcji if. Jakieś sugestie, jak mogę to zrobić?
Zaproszony:
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Jeśli chcesz czegoś podstawowego, który działa:
if (this.router.url.indexOf('/test/sort') > -1) {
this.active = 0;
}
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Możesz także użyć:
if (this.router.url.includes('/test/sort')) 
{
this.active = 0;
}

Metoda String.includes (searchString: string, position?: Number): boolean - zwraca wartość true, jeśli element searchString pojawia się jako podłańcuch wyniku konwersji tego obiektu na łańcuch w jednej lub kilku pozycjach, które są większe lub równe pozycji; w przeciwnym razie zwraca false.
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Możesz użyć LocationStrategy, aby uzyskać adres URL bez parametrów.
import {LocationStrategy} from '@angular/common';
export class AppComponent implements OnInit { constructor(private url:LocationStrategy) { } ngOnInit() { console.log(this.url.path());
if(this.url.path()==='/test/sort'){ this.active=0;
} }}

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się