Angular获取查询参数

时间:2017-07-28 08:15:10

标签: angular angular2-routing

我需要将下一个url发送到组件:

http://localhost:3000/interactive/malenkoe_obyavlenie?device_type=phone

我接下来试过了:

@NgModule({
  imports: [
  RouterModule.forChild([
    {
      path: ':id?device_type',
      component: InteractivePreviewComponent
    }
  ]),
  CommonModule
  ],
  declarations: [InteractivePreviewComponent]
})

但它不起作用。 path: ':id/:device_type*', - 在这种情况下,我有工作模块,但它带来了另一种网址格式 http://localhost:3000/interactive/malenkoe_obyavlenie/phone

UPD:我的目标是获得'queryParams'。

1 个答案:

答案 0 :(得分:0)

我在ActivatedRoute的不同字段中找到queryParams

this.routeParamsSubscription = this.route.params.subscribe(params => {
//get id from params  
if(params['id']) {
    this.slug = params['id']
    //subscribing to change queryParams 
    this.routeParamsSubscription = this.route.queryParams.subscribe(params => {
        // get query params this!
        this.init(this.slug, params['device_type'])
    })
  }
})

关于此主题的好教程: https://angular-2-training-book.rangle.io/handout/routing/query_params.html