A React component that provides an autocomplete feature for Google Maps | ExGoogleMapAutoComplete

ExGoogleMapAutoComplete

Logo

About The Project

A React component that provides an autocomplete feature for Google Maps, but also allows users to enter a custom address if it doesn’t exist on Google Maps.

Logo

Suported Frameworks

  • React

Getting Started

Prerequisites

  • React Framework
  • Node JS

Installation

  • You can install the ExGoogleMapAutoComplete package using package managers. nmp
npm install ex-google-map-autocomplete

Usage

To use the ExGoogleMapAutoComplete component in your React project, import it and include it in your JSX code:


import React from 'react';
import ExGoogleMapAutoComplete from 'ex-google-map-autocomplete';

function MyComponent() {
  const apiKey = "your_api_key"
  const [selectedPlace, setSelectedPlace] = useState({
    formatted_address: '',
    geometry: { location: { lat: null, lng: null } },
    useAutocomplete: true,
  })

  const handlePlaceSelect = place => {
    setSelectedPlace({
      formatted_address: place.formatted_address,
      geometry: place.geometry,
      useAutocomplete: selectedPlace.useAutocomplete,
    })
  }
  
  const handleUseAutocompleteChange = value => {
    setSelectedPlace({
      formatted_address: selectedPlace.formatted_address,
      geometry: selectedPlace.geometry,
      useAutocomplete: value,
    })
  }

  return (
    <div>
      <ExGoogleAutoComplete
        apiKey={apiKey}
        selectedPlace={selectedPlace}
        onPlaceSelect={handlePlaceSelect}
        useAutocomplete={selectedPlace.useAutocomplete}
        onUseAutoComplete={handleUseAutocompleteChange}
       />
    </div>
  );
}

export default MyComponent;

Props

The ExGoogleMapAutoComplete component accepts the following props:

  • apiKey : Your Google API Key
 const apiKey = "your_api_key"
  • selectedPlace : A use State variable used to storage the selected location.
const [selectedPlace, setSelectedPlace] = useState({
 formatted_address: '',
 geometry: { location: { lat: null, lng: null } },
 useAutocomplete: true,
})
  • onPlaceSelect: A callback function to perform the location storage, using the selectedPlace variable.
 const handlePlaceSelect = place => {
    setSelectedPlace({
       formatted_address: place.formatted_address,
       geometry: place.geometry,
       useAutocomplete: selectedPlace.useAutocomplete,
     })
   }
  • useAutocomplete: A component parameter used to set if the component will be using the Google Map Autocomplete feature or if is not.
  • onUseAutoComplete: A callback function to perform the behaviour change, using the selectedPlace variable
const handleUseAutocompleteChange = value => {
 setSelectedPlace({
   formatted_address: selectedPlace.formatted_address,
   geometry: selectedPlace.geometry,
   useAutocomplete: value,
 })
}

Feedback

If you have any feedback, please reach out to us at:

Contributing

Contributions are always welcome! 👏

We welcome contributions to this project! If you’d like to contribute, please follow these guidelines:

Thank you for your interest in contributing!

License

MIT

Support

For support, Star this repository and Follow me on GitHub

GitHub

View Github

Related Posts

Recent Posts

ഇടുക്കിയിലെ മലയോര മേഖലകളിൽ രാത്രിയാത്ര നിരോധിച്ചു. രാത്രി ഏഴു മുതൽ രാവിലെ ആറു വരെയാണ് നിരോധനം

ഏന്തയാർ ഈസ്റ്റിൽ പ്രളയത്തിൽ തകർന്ന പാലത്തിന് പകരം പുതിയ പാലം നിർമ്മിക്കുവാൻ താത്ക്കാലിക പാലം പൊളിച്ച് നീക്കി

Explore the Investment Opportunities: A Comprehensive Guide to Different Types of Mutual Funds

Title: Understanding Mutual Funds: A Beginner's Guide to Investing

തീവ്രമഴ മുന്നറിയിപ്പിന്റെ പശ്ചാതലത്തിൽ സംസ്ഥാനം ജാഗ്രതയിൽ

250,000 അപേക്ഷകൾ വർദ്ധിച്ചതിനാൽ ട്രാൻസ്‌പോർട്ട് കമ്മീഷണർ പരിശോധന പുനരാരംഭിക്കും

ഏലക്കയിൽ കീടനാശിനി സാന്നിധ്യം; ആറര ലക്ഷത്തിലധികം ടിൻ അരവണ നശിപ്പിക്കാൻ ടെൻഡർ ക്ഷണിച്ച് ദേവസ്വം ബോർഡ്‌

ഭീമൻ പാറക്കഷണങ്ങൾ അടർന്ന് ദേശീയ പാതയിലേക്ക് വീഴുന്നത് പതിവാകുന്നു. കുട്ടിക്കാനത്തിനും മുണ്ടക്കയത്തിനുമിടയിൽ നിലനിൽക്കുന്നത് വൻ അപകട ഭീഷണി

ചക്രവാതച്ചുഴി:അതിശക്തമായ മഴ വരുന്നു

പ്ലസ് വൺ പ്രവേശനം. അക്ഷയയിൽ തിക്കി തിരക്കേണ്ട, നെറ്റിവിറ്റി/ജാതി തെളിയിക്കാൻ പത്താംതരം സർട്ടിഫിക്കറ്റ് മതി