title: How to pass and receive data using router.navigate with Angular?
body: <p>I am trying to pass and read data using Angular <code>Route.navigate</code> , </p>
  
  <p>On one component I have</p>
  
  <pre><code>this._router.navigate(["dashboard",{ queryParams: { page: 1 }}],
  </code></pre>
  
  <p>On Dashboard component I have</p>
  
  <pre><code>ngOnInit() {
      this.sub = this._route
        .queryParams
        .subscribe(params =&gt; {
          // Defaults to 0 if no query param provided.
          let page = +params['page'] || 0;
          console.log(page);
        });
    }
  </code></pre>
  
  <p>But this always return <strong>0</strong></p>
  
  <p>Am I doing anything wrong?</p>
  
  <p>My <code>ng --version</code> is</p>
  
  <pre><code>@angular/cli: 1.0.2
  node: 6.3.1
  os: darwin x64
  @angular/common: 4.1.1
  @angular/compiler: 4.1.1
  @angular/core: 4.1.1
  @angular/forms: 4.1.1
  @angular/http: 4.1.1
  @angular/platform-browser: 4.1.1
  @angular/platform-browser-dynamic: 4.1.1
  @angular/router: 4.1.1
  @angular/cli: 1.0.2
  @angular/compiler-cli: 4.1.1
  IPLCEWKS01167:routeTest iplcewks01167$
  </code></pre>