2014-09-09 12 views
5

Bu hatayı bugün Google Maps için kullanmaya başladım:Google Haritalar Hata: Yakalanmamış InvalidValueError: setIcon: bir dize değil; ve url özelliği yok; ve yol özelliği yok

Yakalanmamış InvalidValueError: setIcon: string değil; ve url özelliği yok; ve yol özelliği yok

Hiçbir kodu hiçbir zaman değiştirmedim.

Hata bu sayfadaki oluyor: http://gusmodern.com/pages/store-locator

Herkes önce bu geldi?

+1

başlangıç ​​(şu anda deneysel sürümünü yüklemek). V3 sürümünün sürümünün URL'si her zaman "https: //maps.googleapis.com/maps/api/js?v=3" –

cevap

0

İki gündür de bu sorunu yaşadım. Benim durumumda, null argümanıyla haritada bir MarkerImage ayarlıyorum. Bu, haritada işaretçileri sakladığım anlamına gelir. Bu yardımcı olur

markers = new google.maps.Marker({ 
       map: map, 
       position: results[0].geometry.location 
      }); 
      markers.setVisible(false); 

Hope:

markers = new google.maps.Marker({ 
       map: map, 
       position: results[0].geometry.location, 
       icon: new google.maps.MarkerImage(null) 
      }); 

Şimdi bu çözümü görünüyor:

Bu

önce çalıştı. İyi şanslar!

+0

Bu, tüm işaretleyiciyi gizleyecektir. sadece simgesini gizlemek isterseniz: 'var nullIcon = { url: '' boyutu: Yeni google.maps.Size (0, 0), köken: Yeni google.maps.Point (0 , 0), ankrajı: yeni google.maps.Point (0, 0) }; var marker = new google.maps.Marker ({ icon: nullIcon, ... ' – Janosch

3

Belirli bir sürüm referansı https://maps.googleapis.com/maps/api/js?v=3&sensor=true ile güncellendi ve hata gitti. Bunu, coğrafi konum web siteleri ve mobil uygulamaların çoğunda gördüm.

+0

Evet, aynı zamanda bizim için de çalıştı. Google'ın son zamanlarda haritalar kitaplığını güncellediği görülüyor. –

+0

Yine aynı hatayı alıyorum. Neden olduğunu biliyoruz. Çözümü artık çalışmıyor –

1

Sadece bazı kodlarımda aynı hatayı aldım. Geçmişteki bir başka soruya, işaretçileri belirlediğimde, çapa ve ölçeklendirilmiş boyut için getirdiğim değişkenlerin float sayıları olduğundan ve dizeler halinde gelmediğinden emin olmam gerektiğini fark ettim. Bu yeni bir güncelleme ile yeni bir gereklilik olmalı. Kendi kodunda

Ben

currentIcon = { 
      url: 'http://www.example.com/img/avatars/'+name+'.png', 
      origin: new google.maps.Point(0, 0), 
      anchor: new google.maps.Point(parseFloat(aw),parseFloat(ah)), 
      scaledSize: new google.maps.Size(parseFloat(w),parseFloat(h)) 
     }; 

için

currentIcon = { 
      url: 'http://www.example.com/img/avatars/'+name+'.png', 
      origin: new google.maps.Point(0, 0), 
      anchor: new google.maps.Point(aw,ah), 
      scaledSize: new google.maps.Size(w,h) 
     }; 

değişti ve şimdi benim için çalışıyor.

+0

Bu çözüm olmalı. – kaiser

0

Aynı Sorun bir MarkerWithLabel {} özelliği olarak bir simgeyle aynı sorunu yaşadım.

Çözüm: haritalar-API salım-sürümünü yükleyerek

var nullIcon = { url: '', size: new google.maps.Size(0, 0), origin: new google.maps.Point(0, 0), anchor: new google.maps.Point(0, 0) }; 
İlgili konular