2015-11-22 43 views
0

當我在聚合物對象的方法中,我無法修改我的屬性。我不知道要傳遞給函數的參數。無法訪問屬性聚合物功能

<google-map-marker id="userMarker" latitude="{{locOrigin.lat}}" longitude="{{locOrigin.lng}}"></google-map-marker> 

properties: { 
     locOrigin: { 
      type: Object, 
      value: {} 
     } 
    }, 

ready: function(e) { 
     if(navigator.geolocation) { 
      navigator.geolocation.getCurrentPosition(this.maPosition(), this.erreurPosition);    
     } else { 
      alert("Ce navigateur ne supporte pas la géolocalisation"); 
     } 
    }, 

maPosition: function (position, locOrigin) { 
     locOrigin.lat = position.coords.latitude;//locOrigin undifined 
    }, 
+0

從API谷歌:navigator.geolocation.getCurrentPosition(函數(位置),但當我通過位置這裏this.maPosition(位置)我有一個「位置未定義」 – Auremy

+0

有人知道如何訪問屬性內部的方法來修改它們? – Auremy

回答

0

爲了能夠修改你的對象正確使用方法set像這樣:

maPosition: function (position) { 
    this.set('locOrigin.lat', position.coords.latitude); 
} 

BTW,在這種情況下,你叫maPosition? (不需要locOrigin參數)

+0

maPosition獲取用戶位置,所以我想在屬性locOrigin中添加這個位置,以便能夠在元素外部獲得它 – Auremy

+0

它也與notifyPath('locOrigin。 lat',latUser);但我認爲notifyPath會觸發一個事件或呼叫觀察者,但沒有任何附加... – Auremy

+0

我仍然有this.set不是函數,當我調用document.querySelector('carte-lieux')時它正在工作.notifyPath/set – Auremy