Googleマップを読み込んでローカル結果を表示するには、mdg:geolocation + dburles/meteor-google-mapsを使用しています。 Googleプレイスライブラリを除き、地図は正常に機能し、ジオロケーションは正常に機能します。Meteor JS mdg:geolocation + dburles/meteor-google-maps、Googleプレイスライブラリのエラー
次のエラーが表示されます「未知の型エラー:this.j.getElementsByTagNameが関数ではありません」 GoogleプレイスをMeteorの外で、また2つのパッケージ統合なしでも利用できるようになりました。
この質問は、約3ヶ月前までに他のユーザーから聞かれました。しかし、スレッドが死んだように見えます。ここのjsファイル内の私の次のコードマップを制御/ジオロケーション
Meteor.startup(function() {
GoogleMaps.load({
v : '3',
key: 'mYKeyinHereBLAHABLAHBLAH',
libraries: 'places'
});
});
Template.map.helpers({
//get current lat & lng and create map
geolocationError: function() {
let error = Geolocation.error();
return error && error.message;
},
mapOptions: function() {
let latLng = Geolocation.latLng();
// Initialize the map once we have the latLng.
if (GoogleMaps.loaded() && latLng) {
return {
center: new google.maps.LatLng(latLng.lat, latLng.lng),
zoom: 15
};
}
}
});
Template.map.onRendered(function() {
let self = this;
GoogleMaps.ready('map', function(map) {
let latLng = Geolocation.latLng();
let marker;
self.autorun(function() {
//set user location
let marker = new google.maps.Marker({
position: new google.maps.LatLng(latLng.lat, latLng.lng),
map: map.instance
});
marker.setPosition(latLng);
map.instance.setCenter(marker.getPosition());
map.instance.setZoom(15);
//google places
let Places = function(locationType){
this.locationType = locationType;
let place = new google.maps.places.PlacesService(map);
place.nearbySearch({
location: latLng,
radius: 16100, //10 mile radius
keyword: [locationType]
}, getPlace);
function getPlace(results, status) {
if (status === google.maps.places.PlacesServiceStatus.OK) {
for (let i = 0; i < results.length; i++) {
console.log(results[i]);
createPlaceMarkers(results[i]);
}
}
}
function createPlaceMarkers(place) {
let placeLocation = place.geometry.location,
placeMaker = new google.maps.Marker({
map: map,
position: place.geometry.location,
draggable:false,
zIndex: 9997
});
}
}
let bars = new Places('Bar'),
club = new Places('Night Club');
});
});
});