1
kullanıcı şöyle bir google harita üzerinde bir noktaya tıkladığında ben ters coğrafi kodlama olduğum

:

Ben denemek ve bir ng tıklama işlevine o nesneyi geçmesi ardından
Object {address_components: Array[4], formatted_address: "Rathmines, Co. Dublin, Ireland", geometry: Object, place_id: "ChIJN6MDC6kOZ0gRIhArCabX9o4", types: Array[2]} 

Ama

gibi kullanıcı adresi ile infowindow dokunduğunda sonuçlar için
geocoder.geocode({'location': latlng}, function(results, status) { 
      if (status === google.maps.GeocoderStatus.OK) { 
       if (results[1]) { 
       console.log(results[1]); 
Bu aşamada

konsol günlüğü [1] görünüyor Haşladım, şu şekilde:

ng-click='addressPicked("+results[1]+")' 

ben başka bir uygulamada bu çalışma var hatayı

Error: [$parse:syntax] Syntax Error: Token 'Object' is unexpected, expecting []] 
at column 23 of the expression [addressPicked([object Object])] starting at [Object])]. 

olsun, ama sadece bir enlem & uzun bir dize geçerek ediyorum.

Bir parametre olarak iletmeye çalışmadan önce nesneyi başka bir şeye dönüştürmem gerekir mi?

ng tıklamadan önce bu hatayla karşılaşan herkes var mı?

Herhangi bir yardım çok takdir edilecektir, teşekkürler. Tam kod bakmadan

+1

kapsamındaki results' değişkeni sonra 'deneyin 'ise ng tıklama = 'addressPicked (sonuçlar: [1]')' –

cevap

6

, benim tahminim

ng-click='addressPicked("+results[1]+")' 

dize gösterimine [object Object] ve dolayısıyla hataya results[1] dönüştürme çünkü Hata alıyor olmasıdır. Bunu yapmalısınız iç tırnak

ng-click='addressPicked(results[1])' 
+0

Parlak! Teşekkürler, bu harika çalıştı. – user1180888

2

olmadan kullanarak

Dene:

ng-click='addressPicked('+results[1]+')' 

sonuç tırnak işaretleri olmadan geçirilmesi gereken bir değişken (nesne) olduğu için.

0

nesnesini nesnesini bir sonraki işleve iletmeye çalışan kişiler, yukarıdaki yanıtlardan hiçbiri tam olarak çalışmaz. Bu durumda kullanmak gerekir:

ng-click='addressPicked(' + JSON.stringify(object) + ')'

0
<div class="class1" id="id1" data-ng-click="click1(arg)" data-ng-class="{class2: expression, class3: expression, class4: expression }"> 

ifadem ben sorun çözüldü var aşağıda gibi ifade değişti ve üstünde ne gibi yaşımda benzer hatayı alıyordum. Ng sınıfı için tüm sınıflara tek tırnak ('') ekleme.

<div class="class1" id="id1" data-ng-click="click1(arg)" data-ng-class="{ 'class2': expression, 'class3': expression, 'class4': expression }">