Próbuję napisać aplikację internetową dla mojego ostatniego projektu roku na uni, a jednym z pierwszych problemów, które muszę rozwiązać, jest otrzymanie automatycznie wypełnionego pola tekstowego dla lokalne wprowadzanie adresu. Spędziłem trochę czasu na rozglądaniu się po Internecie i spędziłem trochę czasu bawiąc się mapami google V3 umieszcza autouzupełnianie wtyczki.Google api autouzupełnianie ograniczone/stronniczość na adres uliczny w moim mieście
jest coś, czego nie całkiem rozumiem w dokumentach api, które miałem nadzieję, że ktoś może być w stanie wyjaśnić dla mnie, a także może wskazać mi w dobrym kierunku.
w docs mówi tak:
The (regionów) typ kolekcji zleca usługę miejsce do powrotu żadnych rezultatów spełniających następujące typy:
locality
sublocality
postal_code
country
administrative_area1
administrative_area2
to co ja obecnie nie rozumiem, mieszkam w Kornwalii (bodmin to be exact) i chcę sprawić, by wyniki były błędne dla bodmin. mam zrobić, co następuje:
var input = document.getElementById('inputOne');
var defaultBounds = new google.maps.LatLngBounds(
new google.maps.LatLng(50.423394,-4.803829),
new google.maps.LatLng(50.508623,-4.692593));
//need to set bounds to cornwall/bodmin
var options = {
bounds: defaultBounds,
types: ['geocode'],
componentRestrictions: {country: 'GB'}
};
var autocomplete = new google.maps.places.Autocomplete(input,options);
teraz to działa, ale jeśli na przykład wchodzę „St n” Spodziewam się, że najpierw wymyślić St Nicolas ulicy, która jest w Bodmin. ale pojawi się coś takiego jak st neot, które znajduje się kilka mil dalej.
jest część mnie, która myśli, że muszę ustawić typ na inną wartość, ale jestem dość zakłopotany już teraz.
EDYTOWANIE: EDYCJA: Przykład, który próbuję osiągnąć, znajduje się na stronie maps.google.com po wprowadzeniu, Bodmin następnie przesuń kursor przed przecinkiem i zacznij wpisywać nazwę ulicy lub nawet Asda zachowa ją lokalne do tego, co jest w tym obszarze. wolałbym nie pisać, bodmin, ale to jest coś, co mógłbym obejść, jeśli ktoś ma jakieś pomysły, które byłyby niesamowite. wtedy będę musiał dowiedzieć się, w jaki sposób użytkownik może wprowadzić pewne wartości, takie jak "Asda"
i uzyskać lokalny adres asda.
Czy próbowałeś componentRestrictions: {kraj: 'GB', sublocality: 'Bodmin'} i/lub componentRestrictions: {kraj: 'GB', lokalizacja: 'Bodmin' }? –
Niestety to działa, od dokumentacji: "Parametr componentRestrictions może być użyty do ograniczenia wyników do konkretnych grup. Obecnie można użyć componentRestrictions do filtrowania według kraju" dzięki i tak :) myślę, że będę musiał trzymać się tego tak to jest. – Vade