Enviar valor da string para o componente na navegação do URL na angular 2
Preciso de ajuda para passar uma string (bookingNumber) para um componente quando estou usando o método router.navigate.
No momento, tenho um serviço chamado bookingsService que possui um método como este código aqui:
redirectToBookingPage(bookingNumber: string) {
var bookingNumber = bookingNumber;
this.router.navigate(['../Main']);
}
O redirecionamento funciona, mas como posso enviar o valor bookingNumber e carregá-lo no componente?
O componente que deve obter esse valor está aqui:
import { Injectable, Inject, Component } from 'angular2/core';
import {RouteConfig, Router, ROUTER_DIRECTIVES} from 'angular2/router';
import {FORM_PROVIDERS} from 'angular2/common';
@Component({
selector: 'main-component',
providers: [...FORM_PROVIDERS],
directives: [...ROUTER_DIRECTIVES ],
styles: [`
agent {
display: block;
}
`],
pipes: [],
template: `
<div class="column small-12 main-area">
<div class="content content-container">
<div class="is-loading"></div>
<div class="row uncollapse login-container">
<div class="column small-12">
<div class="row">
<h1>Main</h1>
</div>
</div>
</div>
</div>
</div>
`,
bindings: [],
})
@Injectable()
export class MainComponent {
constructor() {
}
}
Acho que antes de carregar o html, devo executar um método no construtor para obter o bookingNumber a partir do URL?