私は近隣のGoogleの場所で生成されたレストランのさまざまな種類の料理に異なるマーカーアイコンを使用しようとしています。google places apiレストランの料理に基づいたカスタムマーカーアイコンを使用
例として、レストランがピザ屋の場合は、カスタムピッツェリアアイコン(ローカルに保存したもの)を表示するか、レストランがバーガー場の場合は、デフォルトのレストランアイコンの代わりにハンバーガーアイコンを表示する必要があります。
私が検索した限りでは、場所の種類(たとえば「レストラン」、「図書館」、「駐車場」など)にカスタムアイコンを使用する可能性があるだけで、方法を見つけることができませんレストランタイプのサブタイプを取得します。この問題を回避する方法はありますか?ここで
は本当にマーカーを引く検索し、コールバック関数のコード例です:
var MARKER_PATH =
"https://developers.google.com/maps/documentation/javascript/images/marker_green";
unction search() {
var search = {
bounds: map.getBounds(),
types: ["restaurant"]
};
places.nearbySearch(search, callback);
}
function callback(results, status) {
if (status === google.maps.places.PlacesServiceStatus.OK) {
document.getElementById("lat").value = results[0].geometry.location.lat();
document.getElementById("lng").value = results[0].geometry.location.lng();
// Create a marker for each restaurant found, and
// assign a letter of the alphabetic to each marker icon.
for (var i = 0; i < results.length; i++) {
var markerLetter = String.fromCharCode("A".charCodeAt(0) + i % 26);
var markerIcon = MARKER_PATH + markerLetter + ".png";
// Use marker animation to drop the icons incrementally on the map.
markers[i] = new google.maps.Marker({
position: results[i].geometry.location,
animation: google.maps.Animation.DROP,
icon: markerIcon
});
// If the user clicks a restaurant marker, show the details of that restaurant
// in an info window.
markers[i].placeResult = results[i];
google.maps.event.addListener(markers[i], "click", showInfoWindow);
setTimeout(dropMarker(i), i * 100);
addResult(results[i], i);
}
}
}
私の考えでは、このような何か(、生成された結果のキーワードプロパティを使用して、料理の種類を取得することでした例えばちょうど2つの料理の種類):それを解決する方法があるかどうか..
if (results[i].keyword === "pizzaria") {
markerIcon = "img/icons/pizzaria.png";
} else if (results[i].keyword === "burger") {
markerIcon = "img/icons/fastfood.png";
}
を残念ながら、これは動作しませんし、私スチール不思議