#angular #google-places
#angular #google-places
Вопрос:
Я пытаюсь использовать Google Places в своем приложении Angular, чтобы возвращать пользователю в результате автозаполнения только адреса, которые находятся в радиусе от местоположения, поэтому из документации я должен использовать параметры как location
radius
и strictbounds
.
Для использования автозаполнения я использую следующую библиотеку ngx, но проблема в том, что после установки всех параметров в параметрах, когда я пытаюсь записать определенный адрес, сначала я получаю только тот, который находится в диапазоне, но если я все равно попытаюсь записать один из диапазона или даже другой город, который находится вне диапазона, он все равно вернет эти значения, и я бы предотвратил это.
Вот мои параметры автозаполнения
addressOptions = {
types: ['address'],
componentRestrictions: {
country: 'it'
},
location: new google.maps.LatLng( 44.7179422, 10.5465457),
radius: '1000',
strictbounds: true
};
<input
type="text"
class="form-control"
required
placeholder="es. Via D'israeli"
formControlName="indirizzo"
ngxAutocomPlace
[options]="addressOptions"
(selectedPlace)="addressChange($event)"
/>
Комментарии:
1. Привет @igor-mytyuk, автор библиотеки ngx, которую вы используете здесь, пожалуйста, попробуйте обновить до последней версии пакета v1.0.4
2. @user3550312 привет, vlafranca, я только что обновил библиотеку до 1.0.4, но
strictbounds
она по-прежнему игнорируется..3. Хорошо @igor-mytyuk Я проведу несколько тестов и буду держать вас в курсе
Ответ №1:
mytyuk, похоже, strictBounds
будет учитываться только при передаче bounds
свойства (https://developers.google.com/maps/documentation/javascript/places-autocomplete)
strictBounds — это логическое значение, указывающее, должен ли API возвращать только те места, которые строго находятся в пределах области, определенной заданными границами. API не возвращает результаты за пределами этого региона, даже если они соответствуют вводимым пользователем данным.