角度 - 设置并保持固定参数

时间:2017-06-07 12:42:49

标签: angular angular2-routing

我想在我的网址中有一个固定的queryParameter,它反映了当前的应用程序实例。例如...&instance=xyz

  • 此参数自动设置
  • 应该在每个导航上重置(即使用户已将其删除)

到目前为止,这是我的一个组件:

ngAfterViewInit(){
    let currentInstanceParam = this.router.routerState.root.queryParams['instance'];
    if (!currentInstanceParam){
        // always add current instance as parameter
        this.router.navigate([this.router.url], {queryParams: {instance: this.loginService.getLoginData().currentDataSource}});
    }

}

它有效 - 如果未设置参数,则会添加。

可是:

  • 如果我点击导致相同组件的导航链接,则只会删除参数(不希望为每个导航链接设置preserveQueryParams
  • 有更通用的方法吗? (在一个地方处理固定的参数而不是每个组件)

0 个答案:

没有答案