2012-10-23 44 views
0

我從Dart代碼調用函數window.navigator.geolocation.getCurrentPosition。該功能的最後一個參數是可選的。在JavaScript中,我將設置可選參數如下:在Dart中調用JavaScript函數時指定可選參數

var wpid = navigator.geolocation.watchPosition(geo_success, geo_error, 
    {enableHighAccuracy:true, maximumAge:30000, timeout:27000}); 

Dart代碼中的等效項是什麼?我試過以下,但我不知道這是否是正確的:

window.navigator.geolocation.watchPosition(geo_success, geo_error, 
{'enableHighAccuracy':true, 'maximumAge':30000, 'timeout':27000}); 

回答

1

您正在使用這個方法:http://api.dartlang.org/docs/bleeding_edge/dart_html/Geolocation.html#watchPosition

int watchPosition(PositionCallback successCallback, [PositionErrorCallback errorCallback, Object options]) 

我沒有黑暗SDK這臺機器上,但我看起來完全沒問題。如果JavaScript等效代碼只是一個對象,那麼就像你所做的那樣傳遞一個Dart Map應該是可行的。它有問題嗎?

0

希望通過一個地圖的作品,請嘗試讓我們知道。

即使它工作,這也是一個糟糕的Dart API。選項確實應該是可選參數,而不是選項對象的屬性。我在這裏提交了一個bug:http://dartbug.com/6280

相關問題