使用咖啡指令碼類初始化地圖示記
提供了 App.GoogleMap
咖啡指令碼類 ,並且標記資訊儲存在 .google_map
div 的 data-address-fields
屬性中,地圖示記可以在地圖上初始化,如下所示:
# app/assets/javascripts/google_maps.js.coffee
# ...
class App.GoogleMap
# ...
markers: []
constructor: (map_div)->
# ...
@init_markers()
address_fields: ->
@map_div.data('address-fields')
init_markers: ->
self = this # to reference the instance as `self` when `this` is redefined.
self.markers = []
for address_field in self.address_fields()
marker = new google.maps.Marker {
map: self.map,
position: {
lng: address_field.longitude,
lat: address_field.latitude
},
# # or, if `position` is defined in `ProfileFields::Address#as_json`:
# position: address_field.position,
title: address_field.value
}
self.markers.push marker
要了解有關標記選項的更多資訊,請檢視 Google 的 MarkerOptions 文件及其標記指南 。