У меня был этот кусок кода, работающий нормально, когда часть HTML-страницы. Запустив поиск, он находит интересные места в пределах определенного радиуса пропущенных точек.
(index.html)
...
<script src="https://apis.google.com/js/api.js" type="text/javascript"></script>
<script src="https://maps.googleapis.com/maps/api/js?key={myapikey}&libraries=places&callback=initMap"></script>
...
(script.js)
function googlePlaces(points) {
points = [
[2.627365, 49.215369],
[2.760591, 49.647163],
[2.952975, 50.057504],
[3.344742, 50.280862],
[3.768293, 50.451306],
[4.21659, 50.534029] // for sake of example
var i=0;
var placesOfInterest = [];
for (point of points){
var latLng = new google.maps.LatLng(point[1],point[0])
var request = {
location: latLng,
radius: '10000'
};
service = new google.maps.places.PlacesService(map);
service.nearbySearch(request,
function(results,status){
if (status == google.maps.places.PlacesServiceStatus.OK) {
placesOfInterest.push(results);
};
});
i++;
}
return placesOfInterest;
}
Теперь я хочу использовать этот код в настройке node.js (без HTML), чтобы вернуть placeOfInterest в виде JSON. Я переместил весь соответствующий код в файл controller.js моего API.
Но теперь я получаю сообщения об ошибках, которые "google" не определен.
Что я пробовал
Итак, я попытался импортировать библиотеки Google таким способом https://github.com/googlemaps/google-maps-services-js, добавив строку
var googleMapsClient = require('@google/maps').createClient({
key: 'myAPIkey'
});
и изменение моих google
ссылок на ...
// service.nearbySearch(request,
googleMapsClient.nearbySearch(request,
//var latLng = new google.maps.LatLng(point[1],point[0])
var latLng = googleMapsClient.LatLng(point[1],point[0])
но я получаю ошибку, что googleMapsClient.LatLng не является функцией. Как я могу импортировать библиотеки Google прямо в мой файл js?