Angular 检查router.url是否包含特定字符串?

Angular 检查router.url是否包含特定字符串?,angular,Angular,我有这个: if (this.router.url === '/test/sort') { this.active = 0; } 问题是,有时url将是test/sort?procesId=11,而不会输入if语句。有什么建议吗?如果您想要一些基本的功能: if (this.router.url.indexOf('/test/sort') > -1) { this.active = 0; } 您可以使用

我有这个:

   if (this.router.url === '/test/sort') {

                    this.active = 0;
                }

问题是,有时url将是
test/sort?procesId=11
,而不会输入if语句。有什么建议吗?

如果您想要一些基本的功能:

if (this.router.url.indexOf('/test/sort') > -1) {
  this.active = 0;
}

您可以使用LocationStrategy获取不带参数的url

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; 
         }

    }

}
您还可以使用:

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

方法
String.includes(searchString:String,position?:number):boolean
-如果
searchString
显示为将此对象转换为字符串的结果的子字符串,则返回
true
,位置大于或等于position;否则,返回false。

为什么不复制你的问题标题并粘贴到谷歌上,然后阅读一些结果呢。这正是你想要的,我并不总是想要这个答案,因为你说这不是一个好答案,而且有更好的解决方案。。。