Então, eu tenho este programa angular onde até agora eu levar em um código postal de um usuário e clique no botão enviar a entrada para uma função onde ele é enviado para uma api para converter em Lat e Long coordenadas. veja abaixo:
home.component.html
<div class="center" style="margin-top:50px;">
<label for="ZipCode"><b>Zip Code</b></label>
</div>
<div class="center">
<input name="zipcode" #zipcode id="zipcode" type="text" placeholder="Enter Zip Code" maxlength="5">
</div>
<div class="center" style="margin-top:100px;">
<button class="button button1" (click)="getCoords(zipcode.value)" ><b>Retrieve Data</b></button>
</div>
claramente, este é apenas um trecho do código, mas é suficiente para fins de exibição. em seguida é a função de api e, em seguida, muda o modo de exibição para as estações de componentes/página:
a casa.componente.ts
export class HomeComponent implements OnInit {
constructor(
private router: Router
){}
ngOnInit(): void {
}
getCoords(val: any){
var url = "http://www.mapquestapi.com/geocoding/v1/address?key=MYKEY&location=" + val;
fetch(url)
.then((res) => res.json())
.then((data) => {
var lat = data.results[0].locations[0].displayLatLng.lat;
var long = data.results[0].locations[0].displayLatLng.lng;
this.router.navigate(["/stations"])
})
}
}
estações.componente.ts - como você pode ver nada aqui ainda, porque eu não consigo descobrir o que fazer
import { Component, Input, OnInit } from '@angular/core';
@Component({
selector: 'app-stations',
templateUrl: './stations.component.html'
})
export class StationsComponent implements OnInit {
ngOnInit(): void {
}
}
agora isso tudo funciona corretamente. eu testei a lat e long variáveis no console-log e ele retorna a lat e long bem. o meu problema é que eu preciso para enviar a lat e long valor para outro componente/página para ser usados em cálculos. eu não vou mentir dizendo que eu percorri a internet tentando encontrar uma maneira de fazer isso, mas, aparentemente, ele não é fácil angular para fazê-lo. alguém tem alguma idéia sobre a passagem de lat e long valor para outro componente/page?
dataLat: lat
e o erro diz:Argument of type '{ dataLat: any; dataLong: any; }' is not assignable to parameter of type 'NavigationExtras'. Object literal may only specify known properties, and 'dataLat' does not exist in type 'NavigationExtras'.