2013-07-06 60 views
1

如何處理流星框架內的地理定位成功和失敗事件? 更具體地說,調用「navigator.geolocation.getCurrentPosition(showPosition);」如果在獲得位置方面取得成功,請致電showPosition。每當我定義一個通用的javascript函數(函數showPosition(position){})時,我得到一個web套接字錯誤。那麼如何在流星框架中調用這些函數呢?使用流星框架處理地理定位

回答

0

這不是流星特徵。它適用於兼容地理位置的瀏覽器。一旦你得到的位置,你可以發送它或保存通過流星。

客戶端JS:(確保在服務器上存在的集合)

if (navigator.geolocation) 
{ 
    navigator.geolocation.getCurrentPosition(showPosition); 
} 
    else{ 
     console.log("Geolocation is not supported by this browser."; 
    } 
} 

function showPosition(position) 
{ 
    Locations.insert({latitude: position.coords.latitude, 
         longitude: position.coords.longitude}); 
} 
+0

對於某些原因在客戶端js文件內創建通用JavaScript函數,導致套接字關閉。我用代表來解決這個問題,但不知道這是否正確。 – user1647010

+0

哪個socket關閉?流星襪應該重新連接,如果它斷開連接。你可以發佈你的代碼樣本嗎?這真的不應該發生。 – Akshat

1

檢查模塊mdg:geolocation

meteor add mdg:geolocation 

使用它在你的代碼後:

Geolocation.currentLocation()