Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

247
Views
Google place autocompletar Angular, obtener texto si no se encuentran resultados

Estoy creando un componente de autocompletado para la búsqueda de direcciones con el servicio de Google Maps, para lo cual estoy usando Angular 9. Mi componente funciona, pero NECESITO CAPTURAR EL VALOR DE LA ENTRADA CUANDO NO HAY BÚSQUEDAS DISPONIBLES UTILIZANDO EL EVENTO BLUR O CUANDO LA ENTRADA PERDER EL ENFOQUE.

Actualmente, el componente detecta cuando selecciono una dirección, pero necesito que también detecte el texto que escribo cuando no encuentra nada.

mi html:

 <input #search class="form-control" [formControl]="myAddress" type="text" placeholder="Enter a location">

Mis ts:

 export class AddressComponent implements OnInit { @Output() onSelectAddress = new EventEmitter<CustomAddressModel>(); myAddress = new FormControl(''); selectedAddress: PlaceResult; @ViewChild('search') searchElementRef: ElementRef; constructor( private _mapsAPILoader: MapsAPILoader, private ngZone: NgZone, ) { } ngOnInit(): void { this._mapsAPILoader.load().then(() => { const autocomplete = new google.maps.places.Autocomplete(this.searchElementRef.nativeElement); autocomplete.addListener("place_changed", () => { this.ngZone.run(() => { this.selectedAddress = autocomplete.getPlace(); if (!this.selectedAddress.geometry) { return; } const result = { lat: this.selectedAddress.geometry.location.lat(), long: this.selectedAddress.geometry.location.lng(), strAddress: this.selectedAddress.formatted_address } as CustomAddressModel; this.onSelectAddress.emit(result); }); }); }); } }

¿Alguna idea?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

por lo general, debe suscribirse a los cambios de valor del control de entrada.

 ngOnInit() { this.formchanges(); } formchanges() { this.yourform.controls['myAddress'].valueChanges.pipe( debounceTime(500), finalize(() => { })).subscribe(x => { var address = safeTrim(this.yourform.get('myAddress').value); this.getAddress(address); } }); } getAddress() { //your call to the google maps api goes here }

No estoy seguro, pude responder a su pregunta o no.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!