web-dev-qa-db-ja.com

Angular Googleマップのカスタムマーカーアイコン

カスタムマーカーを作成できません。アイコンパラメータに画像パスを渡しても、デフォルトのオレンジ色のマーカーが表示されます。何かおかしいと思ったら教えてください。

ディレクティブのテンプレート:

<div id="searchMap" class="googleMaps-destinations">
<div class="google-maps">
    <ui-gmap-google-map center="map.center" zoom="map.zoom" options="map.options">
        <ui-gmap-marker 
            ng-repeat="marker in search.Origin_airports" 
            coords="marker.originMarker.location" 
            icon="marker.originMarker.icon.url" 
            fit="false" 
            idkey="'<< marker.originMarker.id >>'" >
        </ui-gmap-marker>
    </ui-gmap-google-map>
</div>

私は使用しています://maps.googleapis.com/maps/api/js?v = 3&sensor = true with angle-google-maps/dist/angular-google-maps.js

10
JKoder

オプションプロパティを介してアイコンのURLを渡すことを解決しました

コントローラにこのようなものを設定します

marker.options: {
    icon:'//developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png"'
}

その後

<div id="searchMap" class="googleMaps-destinations">
   <div class="google-maps">
    <ui-gmap-google-map center="map.center" zoom="map.zoom" options="map.options">
    <ui-gmap-marker
        options="marker.options" 
        ng-repeat="marker in search.Origin_airports" 
        coords="marker.originMarker.location"      
        fit="false" 
        idkey="'<< marker.originMarker.id >>'">
    </ui-gmap-marker>
</ui-gmap-google-map>
14
Tiziano Zonta

そのアイコンを見逃したのはオブジェクトです。

 icon= '{url:    "//developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png" }'
14
JKoder

カスタムアイコンの問題を解決しましたplunkerここをクリック で確認してください

options: {  draggable: false,      icon:'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png' }

HTMLはここにあります

<ui-gmap-google-map center="map.center" zoom="map.zoom" draggable="true" options="options">
        <ui-gmap-marker coords="marker.coords" options="marker.options" events="marker.events" idkey="marker.id">
        </ui-gmap-marker>
    </ui-gmap-google-map>
0
Karthikeyan G