Security News
How Threat Actors are Abusing GitHub’s File Upload Feature to Host Malware
GitHub is susceptible to a CDN flaw that allows attackers to host malware on any public repository.
react-google-places-suggest
Advanced tools
Readme
React component to select geolocated suggestion from Google Maps Places API
You can download react-google-places-suggest
from the NPM registry via the
npm
or yarn
commands
yarn add react-google-places-suggest
npm install react-google-places-suggest --save
If you don't use package manager and you want to include
react-google-places-suggest
directly in your html, you could get it from the
UNPKG CDN
https://unpkg.com/react-google-places-suggest/umd/react-google-places-suggest.js
import React, {Component} from "react"
import ReactGoogleMapLoader from "react-google-maps-loader"
import ReactGooglePlacesSuggest from "react-google-places-suggest"
const MY_API_KEY = "AIzaSyDwsdjfskhdbfjsdjbfksiTgnoriOAoUOgsUqOs10J0" // fake
export default class GoogleSuggest extends React.Component {
state = {
search: "",
value: "",
}
handleInputChange = e => {
this.setState({search: e.target.value, value: e.target.value})
}
handleSelectSuggest = (geocodedPrediction, originalPrediction) => {
console.log(geocodedPrediction, originalPrediction) // eslint-disable-line
this.setState({
search: "",
value: geocodedPrediction.formatted_address,
})
}
handleNoResult = () => {
console.log("No results for ", this.state.search)
}
handleStatusUpdate = status => {
console.log(status)
}
render() {
const {search, value} = this.state
return (
<ReactGoogleMapLoader
params={{
key: MY_API_KEY,
libraries: "places,geocode",
}}
render={googleMaps =>
googleMaps && (
<ReactGooglePlacesSuggest
googleMaps={googleMaps}
autocompletionRequest={{
input: search,
// Optional options
// https://developers.google.com/maps/documentation/javascript/reference?hl=fr#AutocompletionRequest
}}
// Optional props
onNoResult={this.handleNoResult}
onSelectSuggest={this.handleSelectSuggest}
onStatusUpdate={this.handleStatusUpdate}
textNoResults="My custom no results text" // null or "" if you want to disable the no results item
customRender={prediction => (
<div className="customWrapper">
{prediction
? prediction.description
: "My custom no results text"}
</div>
)}
>
<input
type="text"
value={value}
placeholder="Search a location"
onChange={this.handleInputChange}
/>
</ReactGooglePlacesSuggest>
)
}
/>
)
}
}
See Demo page
Name | PropType | Description | Example |
---|---|---|---|
googleMaps | object | injected by react-google-maps-loader | - |
onNoResult | function | Handle no results when enter key is pressed | (geocodedPrediction, originalPrediction) => {console.log(geocodedPrediction, originalPrediction)} |
onSelectSuggest | function | Handle click on suggest | (geocodedPrediction, originalPrediction) => {console.log(geocodedPrediction, originalPrediction)} |
onStatusUpdate | function | Handle places service status update | status => {console.log(status)} |
customRender | function | Customize list item | prediction => prediction ? prediction.description : "no results" |
customContainerRender | function | Customize list | items => <CustomWrapper>{items.map(item => <ItemWrapper>{item.description}</ItemWrapper>)} |
displayPoweredByGoogle | boolean | Display the "Powered By Google" logo as required by the Google Maps autocomplete terms and conditions. (defaults to true. Not included when using customContainerRender prop) | |
textNoResults | String | No results text, null to disable | No results |
npm test
).See CONTRIBUTING.md guidelines
See CHANGELOG.md
This project is licensed under the MIT License - see the LICENCE.md file for details
FAQs
React component to select geolocated suggestion from Google Maps Places API
The npm package react-google-places-suggest receives a total of 1,641 weekly downloads. As such, react-google-places-suggest popularity was classified as popular.
We found that react-google-places-suggest demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
GitHub is susceptible to a CDN flaw that allows attackers to host malware on any public repository.
Security News
At Node Congress, Socket CEO Feross Aboukhadijeh uncovers the darker aspects of open source, where applications that rely heavily on third-party dependencies can be exploited in supply chain attacks.
Research
Security News
The Socket Research team found this npm package includes code for collecting sensitive developer information, including your operating system username, Git username, and Git email.