簡體   English   中英

將來自firebase的標記添加到網站中的谷歌地圖

[英]Add markers from firebase to google map in website

Firebase 數據結構

在此處輸入圖片說明

我需要使用這些 latlang 在谷歌地圖中添加標記。

我的代碼

    <script>
    var map;

    function initMap() {

        map = new google.maps.Map(document.getElementById('map'), {
          center: {lat: 6.930274, lng: 79.861618},
          zoom: 16.5,
          panControl: false,
          gestureHandling: 'greedy',
          disableDefaultUI: true,
          disableDoubleClickZoom: true,
        });

        var dbRef= firebase.database().ref('bins');
        dbRef.on('value', function(snapshot) {
            var snap = snapshot.val();
            var marker = new google.maps.Marker({
              position: {lat: snap.lat, lng: snap.lang},
              map: map
            });
        });
    }
</script>

這段代碼運行時什么也沒發生。

看看這個

在該位置使用parseFloat()因為 firebase 將數據作為strings返回。

position: {lat: parseFloat(snap.lat), lng: parseFloat(snap.lang)}

這是因為您沒有訪問必須使用forEach才能獲取值的bins的子項:

 var dbRef= firebase.database().ref('bins');
    dbRef.on('value', function(snapshot) {
    snapshot.forEach(function(child) {
    var childs=child.val();
    var marker = new google.maps.Marker({
          position: {lat: childs.lat, lng: childs.lang},
          map: map
          });
       });
   });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM