2

I am using Google autocomplete API in a react app. By default, the user can enter a street address or the name of a business in the autocomplete search field and google will autocomplete it. How can I restrict the autocomplete field to only autocomplete business names?

sotn
  • 1,833
  • 5
  • 35
  • 65

1 Answers1

1

You can set the type as establishment. Here is an example code:

  let autocomplete;
  function initMap() {
    autocomplete = new google.maps.places.Autocomplete(
      document.getElementById("autocomplete"),
      {
        types: ["establishment"],
        componentRestrictions: { country: ["US"] },
        fields: ["place_id", "geometry", "name", "formatted_address"],
      }
    );
    autocomplete.addListener("place_changed", onPlaceChanged);
  }

  function onPlaceChanged() {
    var place = autocomplete.getPlace();

    if (!place.geometry) {
      document.getElementById("autocomplete").placeholder = "Enter a place";
    } else {
      document.getElementById("business-name").innerHTML = place.name;
      document.getElementById("full-address").innerHTML =
        place.formatted_address;
    }
  }

For more info you can check the doc here